本手册是针对iReport制作报表时如何对指定的列求和进行的操作步骤详细说明。
iReport4.0.2
在仓库实际业务往来单据中,例如收货后由账务员(有的称为“单证员”或“业务员”等)会按照系统实际收货数量打印一份单据(有的称为《入库往来明细》或《入库回执单》等)给到送货人员,下图是对【实收数量】列字段进行求和的效果呈现:
事先对单据的整体部分设计好,如下图:
【步骤1】:找到【Variables】并右键单击(如下图步骤(1));
【步骤2】:在右键菜单单击【添加Variable(A)】(如上图步骤(2));
【步骤3】:在刚才新建【variable1】上右键单击(如下图步骤(3));
【步骤4】:在右键菜单上单击【重命名…】(如上图步骤(4));
【步骤5】:在【重命名】对话框【新建名称(N):】文本框将默认值【variable1】修改为想取的变量名称,如【SUM_QTY】(如下图步骤(5));
【步骤6】:单击【确定】按钮(如上图步骤(6));
【步骤7】:单击选中刚才重命名的变量【SUM_QTY】(如下图步骤(7));
【步骤8】:单击【属性】按钮(如下图步骤(8));
【步骤9】:在【Variable Class】右侧下拉列表选择【java.lang.Number】(如上图步骤(9));
【步骤10】:在【Calculation】右侧下拉列表选择【Sum】(如上图步骤(10));
【步骤11】:在【Reset group】右侧下拉列表选择【Report】(如上图步骤(11))
【步骤12】:在【Increment type】右侧下拉列表选择【None】(如上图步骤(12))
【步骤13】:在【Variable Expression】右侧文本框输入【new Double(Double.parseDouble( $F{COLUMNNAME24}.length()>0?$F{COLUMNNAME24}:"0"))】(如上图步骤(13)),这里的【$F{COLUMNNAME24}】在这里就是要统计的【实收数量】所在列字段,用户可以根据实际案例修改这个列数值;
【步骤14】:选中【实收数量】字段所对应的【Text Field】(如下图步骤(14));
【步骤15】:单击【属性】按钮(如下图步骤(15));
【步骤16】:在【Expression Class】右侧下拉列表选择【java.lang.String】(上图步骤(16));
【步骤17】:选中【SUM_QTY】这个变量并拖到【实收数量合计:】右侧(如下图步骤(17)),调整好边框、字体及字号格式;
【步骤18】:选中刚拖进来的变量(如下图步骤(18));
【步骤19】:单击【属性】按钮(如上图步骤(19));
【步骤20】:单击【Pattern】右侧筛选按钮(如上图步骤(20));
【步骤21】:在【Number】的【Decimal places:】文本框修改为【0】(如下图步骤(21)),一般常规收货数量为整数,数值设为0,也有用户收货数量为小数的,用户可根据实际案例调整;
对指定【实收数量】列字段求和设置操作完成,点击编译后将后缀名为 .jasper 文件配置在实际系统指定路径后可预览得到如下图效果:
如果iReport与相关数据库(如WMS数据库)已建立连接,则可以预览最终效果;
如果iReport与相关数据库(如WMS数据库)未建立连接,则需要将编译后【.jasper】文件配置在实际系统指定路径,才可以预览最终效果