文档库 最新最全的文档下载
当前位置:文档库 › 勤哲excel服务器教程之本期累计

勤哲excel服务器教程之本期累计

勤哲excel服务器教程之本期累计

本节的销售日报过于简单,假设我们希望在日报上不仅要体现当天的销售情况,还要体现从月初到日报当天的累积销售情况,就像下图所示的这样:

建立模板《新日报》

1)按图11-5所示表样建立模板《新日报》

2)定义单一数据项:新日报_主表

主键区域字段名数据类型必填填写规范其它

√C2日期日期当前日期

H2上次日期日期

3)选中B5:H14,定义重复数据项。注意第一步的上方标题行数要输入2。

4)最后定义好新数据表:新日报_明细

第一条公式----提取所有产品

在《新日报》模板上新建如下的表间公式

切换到“显示范围”选项卡下,选择“重复数据只填充一次”。

注意两处:1)应用方式我们选择了“新建打开时”,效果就是,当我们填报的时候,空白日报一打开,这条表间公式马上就执行。2)在显示方式处,我们选中了“重复数据只填充一次”。这是因为物料表中可能有这样的数据:名称相同,规格不同,所以如果全部提取出来会出现同样的品名重复显示好几行的情况,此选项用于保证重复的数据只显示一次。按行(列)匹配

具体来说,按行(列)匹配就是依照表间公式的查询结果中的某个部分(在这里是“产品名称”),到工作表上找到相同的取值,确定其所在的行(或列),然后把查询结果的其余部分填充到对应的行(或列)上。

定义按行列匹配的表间公式

在新日报上定义表间公式,其来源数据和筛选条件均和11.1节的公式相同,仅填充方式有变化,如下图11-12,对“产品名称”要选择“按行(列)匹配”

完整的表间公式如下:

提取上次日报的日期

因为我们平时有工作日,当然也有周末或者节假日,所以,上一张日报的日期不能简单的用当前日期减一天得出,下面,我们用表间共识来提取上次日报的日期:

注意:在做“填充方式”时,把“新日报_日期”前面加号展开后,下面有很多日期函数,我们运用的是“最晚()”函数。

滚动累加

现在来提取上次日报上的累计数,定义表间公式如下:

相对于勤哲excel服务器中的本期累计功能,因为软件自身功能定位的因素,FineRepot 的先关功能显然更丰富一些,具体介绍如下:

FineReport报表的数据模型,由于是通过单元格绑定数据列扩展,来实现数据的读取和展现。所以在设计界面上的某个单元格时,可采用层次坐标的方式,对扩展后的每个单元格进行精确定位,得到某个单元格扩展后的其他多条数据。通常像EXCEL中设计表格时,需将所得的数据进行一些运算。在FineReport中,若要对数据列扩展返回的结果集进行一些运算,较为常见的有:对扩展出的数据进行编号,数据排名,同期比与环比,

占比,累计等等。在Finereport中,累计的分类更为详细,主要分为逐层累计、跨层累计、交叉表的累计,下面主要介绍逐层累计:

逐层累计就是在分组报表中,每一组中分别将每层与上一层数据相加,得到这一层的累计结果,如下图所示的年度累计:

2.示例

2.1打开报表

打开报

表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Cacuate_Bet ween_Cells\PeriodChain.cpt。

修改报表,将同期比改为累计。

2.2逐层累计

方法一:

在D3单元格中,写入累计公式=D3[B3:-1]+C3:在一年内上一个月累计后的金额加当前月的金额,如下图:

其中D3[B3:-1]表示B3扩展出来的上一格(上月)中D3的值。

方法二:

在D3单元格中直接使用逐层累计公式=LAYERTOTAL(B3,C3,D3),等同于公式

=D3[B3:-1]+C3,如果为横向扩展,则传递第四个参数值false,例如:=LAYERTOTAL(B3, C3,D3,false)。

2.3保存并预览

保存模板,点击分页预览,效果如上。模板效果在线查看请点击Accumulative_1.cpt 已完成模板可参

考%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Cacuate_Bet ween_Cells\Accumulative_1.cpt。

相关文档
相关文档 最新文档