/** * <p>getField.</p> * * @return a {@link net.sf.dynamicreports.report.base.DRField} object. */ public DRField<T> getField() { return build(); }
/** * <p>field.</p> * * @param name a {@link java.lang.String} object. * @param dataType a {@link net.sf.dynamicreports.report.definition.datatype.DRIDataType} object. * @param <T> a T object. * @return a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. */ public static <T> FieldBuilder<T> field(String name, DRIDataType dataType) { Validate.notNull(dataType, "dataType must not be null"); FieldBuilder<T> fieldBuilder = new FieldBuilder<T>(name, dataType.getValueClass()); fieldBuilder.setDataType(dataType); return fieldBuilder; }
/** * <p>Constructor for PercentageSubtotalBuilder.</p> * * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. * @param showInColumn a {@link net.sf.dynamicreports.report.builder.column.ColumnBuilder} object. */ protected PercentageSubtotalBuilder(FieldBuilder<? extends Number> field, ColumnBuilder<?, ?> showInColumn) { this(field.getField(), showInColumn); }
/** * <p>setDescription.</p> * * @param description a {@link java.lang.String} object. * @return a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. */ public FieldBuilder<T> setDescription(String description) { getObject().setDescription(description); return this; }
private void build() { try { JRXmlDataSource dataSource = new JRXmlDataSource(XmlDatasourceReport.class.getResourceAsStream("sales.xml"), "/sales/item"); JRXmlDataSource chartDataSource = dataSource.dataSource("/sales/chart/item"); FieldBuilder<Object> idField = field("id", type.integerType()).setDescription("@id"); FieldBuilder<String> itemField = field("item", type.stringType()); FieldBuilder<Integer> quantityField = field("quantity", type.integerType()); FieldBuilder<BigDecimal> unitPriceField = field("unitprice", type.bigDecimalType()); BarChartBuilder barChart = cht.barChart().setDataSource(chartDataSource).setCategory(itemField).series(cht.serie(quantityField).setLabel("Quantity")); report().setTemplate(Templates.reportTemplate) .columns(col.column("Id", idField), col.column("Item", itemField), col.column("Quantity", quantityField), col.column("Unit price", unitPriceField)) .title(Templates.createTitleComponent("XmlDatasource")) .summary(barChart) .pageFooter(Templates.footerComponent) .setDataSource(dataSource) .show(); } catch (DRException e) { e.printStackTrace(); } catch (JRException e) { e.printStackTrace(); } } }
/** * <p>setDataType.</p> * * @param dataType a {@link net.sf.dynamicreports.report.definition.datatype.DRIDataType} object. * @return a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. */ public FieldBuilder<T> setDataType(DRIDataType<? super T, T> dataType) { getObject().setDataType(dataType); return this; }
/** * <p>Constructor for AggregationSubtotalBuilder.</p> * * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. * @param showInColumn a {@link net.sf.dynamicreports.report.builder.column.ColumnBuilder} object. * @param calculation a {@link net.sf.dynamicreports.report.constant.Calculation} object. */ protected AggregationSubtotalBuilder(FieldBuilder<?> field, ColumnBuilder<?, ?> showInColumn, Calculation calculation) { this(field.build(), showInColumn, calculation); }
/** * <p>Constructor for PercentageColumnBuilder.</p> * * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. */ protected PercentageColumnBuilder(FieldBuilder<? extends Number> field) { Validate.notNull(field, "field must not be null"); this.actualExpression = field.getField(); }
/** * <p>field.</p> * * @param name a {@link java.lang.String} object. * @param valueClass a {@link java.lang.Class} object. * @param <T> a T object. * @return a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. */ public static <T> FieldBuilder<T> field(String name, Class valueClass) { FieldBuilder<T> fieldBuilder = new FieldBuilder<T>(name, valueClass); try { DRIDataType<? super T, T> dataType = DataTypes.detectType(valueClass); fieldBuilder.setDataType(dataType); } catch (DRException e) { } return fieldBuilder; }
/** * <p>Constructor for CustomGroupBuilder.</p> * * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. */ protected CustomGroupBuilder(FieldBuilder<?> field) { Validate.notNull(field, "field must not be null"); setValueExpression(field.build()); }
/** * <p>addExpression.</p> * * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. */ protected void addExpression(FieldBuilder<?> field) { Validate.notNull(field, "field must not be null"); this.expressions.add(field.getField()); }
/** * <p>Constructor for CustomGroupBuilder.</p> * * @param name a {@link java.lang.String} object. * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. */ protected CustomGroupBuilder(String name, FieldBuilder<?> field) { super(name); Validate.notNull(field, "field must not be null"); setValueExpression(field.build()); }
/** * <p>Constructor for VariableBuilder.</p> * * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. * @param calculation a {@link net.sf.dynamicreports.report.constant.Calculation} object. */ protected VariableBuilder(FieldBuilder<?> field, Calculation calculation) { super(new DRVariable<T>(field.getField(), calculation)); }
/** * <p>getFieldExpression.</p> * * @param name a {@link java.lang.String} object. * @return a {@link net.sf.dynamicreports.report.definition.expression.DRIExpression} object. */ protected DRIExpression<?> getFieldExpression(String name) { DRIDataType<?, ?> type = getFieldType(name); if (type != null) { return DynamicReports.field(name, type).build(); } return DynamicReports.field(name, Object.class).build(); }
/** * <p>Constructor for VariableBuilder.</p> * * @param name a {@link java.lang.String} object. * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. * @param calculation a {@link net.sf.dynamicreports.report.constant.Calculation} object. */ protected VariableBuilder(String name, FieldBuilder<?> field, Calculation calculation) { super(new DRVariable<T>(name, field.getField(), calculation)); }
/** * <p>setHigh.</p> * * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. * @return a T object. */ public T setHigh(FieldBuilder<? extends Number> field) { Validate.notNull(field, "field must not be null"); getDataset().setHighExpression(field.build()); return (T) this; }
/** * {@inheritDoc} */ @Override public String getName() { return getField().getName(); } }
/** * <p>setOpen.</p> * * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. * @return a T object. */ public T setOpen(FieldBuilder<? extends Number> field) { Validate.notNull(field, "field must not be null"); getDataset().setOpenExpression(field.build()); return (T) this; }
/** * <p>Constructor for TextColumnBuilder.</p> * * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. */ protected TextColumnBuilder(FieldBuilder<T> field) { Validate.notNull(field, "field must not be null"); setValueExpression(field.getField()); }
/** * <p>setVolume.</p> * * @param field a {@link net.sf.dynamicreports.report.builder.FieldBuilder} object. * @return a T object. */ public T setVolume(FieldBuilder<? extends Number> field) { Validate.notNull(field, "field must not be null"); getDataset().setVolumeExpression(field.build()); return (T) this; }