0

这是我的数据对象

public class CandidateExcelModel {
    private int id;
    private String name;    //varchar(50)
    private String email; //   varchar(100)
    private Date dob; //    date  
    private List<String> skill = new ArrayList<String>();
}

我的动态报告:

   for (Iterator<SkillDO> it = job.getSkills().iterator(); it.hasNext();) {
        SkillDO skills = it.next();
        columns.add(ColumnBuilder.getNew().setColumnProperty(skills.getName(), String.class.getName())
                .setTitle(skills.getName()).setWidth(new Integer(90))
                .addConditionalStyles(conditionalStyles)
                .build());
    }

    drb.addColumn("Id", "id", Integer.class.getName(), 10)
            .addColumn("Name", "name", String.class.getName(), 100)
            .addColumn("E-mail", "email", String.class.getName(), 100)
            .addColumn("dob", "dob", Date.class.getName(), 50)
            .addColumn("Phone Number ", "phoneNumber", String.class.getName(), 25)
            .addColumn("Alternate Number", "alternateNumber", String.class.getName(), 25)
            .addColumn("Address Line", "addressLine", String.class.getName(), 100)
            .setPrintColumnNames(true)
            .setIgnorePagination(true)
            .setMargins(0, 0, 0, 0)
            .setTitle("Sales Report")
            .setUseFullPageWidth(true);
    for (AbstractColumn column : columns) {
        drb.addColumn(column);
    }

如何使用 DynamicJasper 填充此数据以进行报告?因为它包含列表,但它应该没有列表。skill只能出现在列表中,因为它可以是可变的

4

1 回答 1

1

请指定您希望该列表如何显示在报告中(即逗号分隔?)。您可以将该字段声明为对象( .addField("skill", Object.class) ),然后添加一个 CustomExpressionColumn 或带有 ValueFormatter 的列,您可以在其中将“技能”向下转换为 List 并最终对列表执行任何操作返回一个字符串值

于 2013-06-17T13:45:21.043 回答