但行好事
莫论前程❤

润乾报表

//参数传递
Map param = new HashMap();
    param.put("memo", Accinto_jxType.PSN_JX.getLabel());
    param.put("name", name);
//集合数据
for(Map map_data: list){
    Map map = new HashMap();
    CorporationRefVO corp_vo = (CorporationRefVO) getHibernateTemplate().get(CorporationRefVO.class, map_data.get("pk_corporation").toString());
    map.put("index", i);
    map.put("name", corp_vo.getName());
    map.put("insurance_code", corp_vo.getInsurance_code());
    map.put("accinto_instr", map_data.get("accinto_instr").toString());
    data_list.add(map);
}
//onExport_Accrual(map, data_list, vo.getSerial_no());
DataSet[] rqdss = makeRqdss(list);
IReport ireport  = RQPrintUtil.makeReport("/query/printdef/account_record_acc_area.raq", rqdss, param);
ReportUtils.exportToDOC(dirpath +"\\"+ serial_no + name +"_统筹区及单位记息单.doc", ireport);
private DataSet[] makeRqdss(List list) {
        DataSet rqds = new DataSet("ds0");
        if (list.size() > 0) {
            Set keys = ((Map) list.get(0)).keySet();
            for (Iterator iter = keys.iterator(); iter.hasNext(); ) {
                String key = (String) iter.next();
                rqds.addCol(key);
            }

            for (int i = 0; i < list.size(); i++) {
                Map oneMap = (Map) list.get(i);
                Row row = rqds.addRow();
                for (Iterator iter = keys.iterator(); iter.hasNext(); ) {
                    String key = (String) iter.next();
                    Object value = oneMap.get(key);
                    row.setData(key, value);
                }
            }
        }
        return new DataSet[] {rqds};
    }

map中存储的参数需要在润乾报表–>配置–>参数中指定

名称与后台param中存储的key值对应。

list集合中查询出来的数据

单独的常量参数可以用
=companyname
# 数据集中的参数,要用数据集函数ds0
存在数据集中,不需要递归的参数写法
=ds0.companyname
存在数据集中,需要递归的多数据用
=ds0.select(identity_no)

序号

row()-开始行数

日期函数

date(workDate)
# 设置显示格式参数值为 yyyy年MM月dd日

now()

字符串拼接

="记账人:" + operator

select函数

参数1: 要选择的字段列名/列号,也可以是表达式。
列号用#n表示,例如#0代表第0列,#1代表第1列,依此类推
参数2: 指定数据排序的顺序,true表示降序排列,false表示升序排列。

参数3: 数据过滤表达式,如果全部选出,则此参数省略,仅用“,”占位。
参数4: 数据排序表达式。当参数4为空时先检查参数2是否为空,如果为空,
则不排序,否则使用参数1排序。如果参数4不为空,先检查参数2,如果参数2为空则不排序,如果不为空,则按参数4排序。
rootGroupExp 是否root数据集表达式【不常用】

#例1:ds1.select( name )
     从数据源ds1中选取name字段列的所有值,不排序

#例2:ds1.select( #2, true )
     从数据源ds1中选取第二个字段列的所有值并降序排列

#例3:ds1.select( name,false,sex=='1')
     从数据源ds1中选取性别为男性('1')的name字段列的值并升序排列

#例4:ds1.select( name, true, sex=='1', id )
#     ds1.select( name, true,, id )
     从数据源ds1中选取性别为男性的name字段列的值并按id字段降序排列
赞(1) 打赏
未经允许不得转载:刘鹏博客 » 润乾报表
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏