Abstract Class used as base for the different Entities Registration Managers.
Every implementation of this class should know how to register a given Entity
and tranform it into any JasperReport object in order to add it to the
JasperDesign.
A Registration Manager is the first step required to create a report.
A subclass should be created only when we want to add new features to DJ.
Probably a new class from this hierarchy will imply a change to one or many
Layout Managers.
Abstract Class used as base for the different Layout Managers.
A Layout Manager is always invoked after the entities registration stage.
A subclass should be created whenever we want to give the users the chance to
easily apply global layout changes to their reports.
Main Layout Manager recommended for most cases.
It provides DJ full features (styles, groups, conditional styles,
expressions, group and total variables, etc)
Builder created to give users a friendly way of adding columns to a report.
Usage example:
AbstractColumn columnState = ColumnBuilder.getNew()
.addColumnProperty("state", String.class.getName())
.addTitle("State").addWidth(new Integer(85))
.addStyle(detailStyle).addHeaderStyle(headerStyle).build();
Like with all DJ's builders, it's usage must end with a call to build() mehtod.
Entity used to handle global and group variables that represent the value of
an operation applied to the corresponding rows.
DJGroupVariable(s) are shown at the header or footer of the column they operate on.
Builder created to give users a friendly way of creating a DynamicReport.
Usage example:
DynamicReportBuilder drb = new DynamicReportBuilder();
Integer margin = new Integer(20);
drb.addTitle("Clients List").addTitleStyle(titleStyle)
.addSubtitle("Clients without debt")
.addDetailHeight(new Integer(15))
.addLeftMargin(margin).addRightMargin(margin).addTopMargin(margin)
.addBottomMargin(margin)
.addPrintBackgroundOnOddRows(true).addOddRowBackgroundStyle(oddRowStyle)
.addColumnsPerPage(new Integer(1)).addColumnSpace(new Integer(5))
.addColumn(column1).addColumn(column2).build();
Like with all DJ's builders, it's usage must end with a call to build() mehtod.
When adding a text to an expression, we have to make sure that the String will not
break JasperReports expression syntax.
For example: if the title text is: November "2009" sales
The double quotes (") must be escaped to \", and in java that would be \\\\\"
To understand better, the expression can be tested in iReport expression editor.
Builder created to give users a friendly way of creating a DynamicReport.
Usage example:
DynamicReportBuilder drb = new DynamicReportBuilder();
Integer margin = new Integer(20);
drb.addTitle("Clients List").addTitleStyle(titleStyle)
.addSubtitle("Clients without debt")
.addDetailHeight(new Integer(15))
.addLeftMargin(margin).addRightMargin(margin).addTopMargin(margin)
.addBottomMargin(margin)
.addPrintBackgroundOnOddRows(true).addOddRowBackgroundStyle(oddRowStyle)
.addColumnsPerPage(new Integer(1)).addColumnSpace(new Integer(5))
.addColumn(column1).addColumn(column2).build();
Like with all DJ's builders, it's usage must end with a call to build() mehtod.
MOVED INSIDE ExpressionUtils
protected JRDesignExpression getExpressionForConditionalStyle(ConditionalStyle condition, AbstractColumn column) {
//String text = "(("+CustomExpression.class.getName()+")$P{"+paramName+"})."+CustomExpression.EVAL_METHOD_NAME+"("+textForExpression+")";
String columExpression = column.getTextForExpression();
//condition.getCondition().setFieldToEvaluate(exprParams)
// PeS17 patch, 2008-11-29: put all fields to fields map, including "invisible" i.e.
Builder created to give users a friendly way of adding groups to a report.
Usage example:
GroupBuilder gb1 = new GroupBuilder();
ColumnsGroup g1 = gb1.addCriteriaColumn((PropertyColumn) columnState)
.addFooterVariable(columnAmount,ColumnsGroupVariableOperation.SUM)
.addFooterVariable(columnaQuantity,ColumnsGroupVariableOperation.SUM)
.addGroupLayout(GroupLayout.VALUE_IN_HEADER_WITH_HEADERS)
.build();
Like with all DJ's builders, it's usage must end with a call to build() mehtod.
Simple Layout Manager recommended when we want to get a ready to operate
Excel plain list from the report.
Groups and many style options will be ignored.
Because all the layout calculations are made from the Domain Model of DynamicJasper, when loading
a template file, we have to populate the "ReportOptions" with the settings from the template file (ie: margins, etc)
Builder created to give users an easy way of creating a DynamicReport based on a collection.
Usage example:
DynamicReport report =
new ReflectiveReportBuilder(data, new String[]{"productLine", "item", "state", "id", "branch", "quantity", "amount"})
.addGroups(3).build();
Like with all DJ's builders, it's usage must end with a call to build() mehtod.
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
Sets the line style (DJChartOptions.LINE_STYLE_SOLID, DJChartOptions.LINE_STYLE_DASHED, DJChartOptions.LINE_STYLE_DOTTED, DJChartOptions.LINE_STYLE_DOUBLE).
If the group is configured to print column names, they will be printed on every page
(even if a group is splitted in two pages)
NOTE: this may cause unexpected results if header variables are present.
Defines what to show if a missing resource is referenced Possible values
are:
DJConstants.WHEN_RESOURCE_MISSING_TYPE_EMPTY: Leaves and empty field.
DJConstants.WHEN_RESOURCE_MISSING_TYPE_ERROR: Throwns and exception.
DJConstants.WHEN_RESOURCE_MISSING_TYPE_KEY: Shows the key of the missing
resource. DJConstants.WHEN_RESOURCE_MISSING_TYPE_NULL: returns NULL
Class that should be used to define the different styles in a friendly
and strict way.
Usage example:
Style headerStyle = new Style();
headerStyle.setFont(Font.ARIAL_MEDIUM_BOLD);
headerStyle.setBorder(Border.PEN_2_POINT);
headerStyle.setHorizontalAlign(HorizontalAlign.CENTER);
headerStyle.setVerticalAlign(VerticalAlign.MIDDLE);
Style() -
Constructor for class ar.com.fdvs.dj.domain.Style