我想在使用 DynamicJasper 生成报告时隐藏列 我不知道该怎么做。我试图得到一些功能,但我无法弄清楚,因为我是一个技术。
这是我的基本代码:
AbstractColumn myColumn = ColumnBuilder.getNew().setColumnProperty(ConstantsClass.REPORT_COLUMN_PROPERTY[0], String.class.getName())
.setFixedWidth(true)
.setTitle(ConstantsClass.REPORT_COLUMN_COLUMN_HEAD[0]).setWidth(new Integer(100))
.setHeaderStyle(myStyle)
.build();
FastReportBuilder drb = new FastReportBuilder();
drb.addColumn(myColumn);
DynamicReport dr = drb.build();
return dr;
假设此列是excel表的B列,则应在生成报告时自动隐藏。在列A之后,只应显示C.取消隐藏时,应显示B.
答案 0 :(得分:0)
你可以尝试这样。因为这是用java编写的,所以你可以试试这个。
if(ConditionForBColumn) {
AbstractColumn myColumn = ColumnBuilder.getNew().setColumnProperty(ConstantsClass.REPORT_COLUMN_PROPERTY[0], ValueOfB String.class.getName())
.setFixedWidth(true)
.setTitle(ConstantsClass.REPORT_COLUMN_COLUMN_HEAD[0]).setWidth(new Integer(100))
.setHeaderStyle(myStyle)
.build();
} else {
AbstractColumn myColumn = ColumnBuilder.getNew().setColumnProperty(ConstantsClass.REPORT_COLUMN_PROPERTY[0], String.class.getName())
.setFixedWidth(true)
.setTitle(ConstantsClass.REPORT_COLUMN_COLUMN_HEAD[0]).setWidth(new Integer(100))
.setHeaderStyle(myStyle)
.build();
}
FastReportBuilder drb = new FastReportBuilder();
drb.addColumn(myColumn);
DynamicReport dr = drb.build();
return dr;