1

我想在使用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。

4

1 回答 1

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;
于 2014-01-20T19:51:09.637 回答