Class ReportBuilder<T extends ReportBuilder<T>>

java.lang.Object
net.sf.dynamicreports.report.builder.AbstractBuilder<T,DRReport>
net.sf.dynamicreports.report.builder.ReportBuilder<T>
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
JasperReportBuilder

public class ReportBuilder<T extends ReportBuilder<T>> extends AbstractBuilder<T,DRReport>

ReportBuilder class.

Author:
Ricardo Mariaca
See Also:
  • Constructor Details

    • ReportBuilder

      public ReportBuilder()
  • Method Details

    • setReportName

      public T setReportName(String reportName)
    • setLocale

      public T setLocale(Locale locale)
    • setResourceBundle

      public T setResourceBundle(ResourceBundle resourceBundle)
    • setResourceBundle

      public T setResourceBundle(String resourceBundleName)
    • setShowColumnTitle

      public T setShowColumnTitle(Boolean showColumnTitle)
    • setShowColumnValues

      public T setShowColumnValues(Boolean showColumnValues)
    • setPageFormat

      public T setPageFormat(PageType pageType)
    • setPageFormat

      public T setPageFormat(PageType pageType, PageOrientation orientation)
    • setPageFormat

      public T setPageFormat(Integer width, Integer height, PageOrientation orientation)
    • setPageMargin

      public T setPageMargin(MarginBuilder margin)
    • setPageColumnsPerPage

      public T setPageColumnsPerPage(Integer columnsPerPage)
    • setPageColumnSpace

      public T setPageColumnSpace(Integer columnSpace)
    • ignorePageWidth

      public T ignorePageWidth()
    • setIgnorePageWidth

      public T setIgnorePageWidth(Boolean ignorePageWidth)
    • ignorePagination

      public T ignorePagination()
    • setIgnorePagination

      public T setIgnorePagination(Boolean ignorePagination)
    • setWhenNoDataType

      public T setWhenNoDataType(WhenNoDataType whenNoDataType)
    • setWhenResourceMissingType

      public T setWhenResourceMissingType(WhenResourceMissingType whenResourceMissingType)
    • titleOnANewPage

      public T titleOnANewPage()
      Prints the title band on a separate page.
      Returns:
      a report builder
    • setTitleOnANewPage

      public T setTitleOnANewPage(Boolean titleOnANewPage)
      Sets whether or not the title band is printed on a separate page.
      Parameters:
      titleOnANewPage - print the title band on a separate page
      Returns:
      a report builder
    • summaryOnANewPage

      public T summaryOnANewPage()
      Prints the summary band on a separate page.
      Returns:
      a report builder
    • setSummaryOnANewPage

      public T setSummaryOnANewPage(Boolean summaryOnANewPage)
      Sets whether or not the summary band is printed on a separate page.
      Parameters:
      summaryOnANewPage - print the summary band on a separate page
      Returns:
      a report builder
    • summaryWithPageHeaderAndFooter

      public T summaryWithPageHeaderAndFooter()
      Prints the summary band with the page header and footer.
      Returns:
      a report builder
    • setSummaryWithPageHeaderAndFooter

      public T setSummaryWithPageHeaderAndFooter(Boolean summaryWithPageHeaderAndFooter)
      Sets whether or not the summary band is printed with the page header and footer.
      Parameters:
      summaryWithPageHeaderAndFooter - print the summary band with the page header and footer
      Returns:
      a report builder
    • floatColumnFooter

      public T floatColumnFooter()
      Prints the column footer band at the bottom of the column.
      Returns:
      a report builder
    • setFloatColumnFooter

      public T setFloatColumnFooter(Boolean floatColumnFooter)
      Sets whether or not the column footer band is printed at the bottom of the column
      Parameters:
      floatColumnFooter - print the column footer at the bottom of the column
      Returns:
      a report builder
    • setPrintOrder

      public T setPrintOrder(Orientation printOrder)
    • setColumnDirection

      public T setColumnDirection(RunDirection columnDirection)
    • setLanguage

      public T setLanguage(String language)
    • setUseFieldNameAsDescription

      public T setUseFieldNameAsDescription(Boolean useFieldNameAsDescription)
    • scriptlets

      public T scriptlets(DRIScriptlet... scriptlets)
    • addScriptlet

      public T addScriptlet(DRIScriptlet... scriptlets)
    • setProperties

      public T setProperties(Properties properties)
    • addProperty

      public T addProperty(String key, String value)
    • setQuery

      public T setQuery(String text, String language)
    • setQuery

      public T setQuery(String sql)
    • setQuery

      public T setQuery(QueryBuilder query)
    • columnGrid

      public T columnGrid(ListType type)
    • columnGrid

      public T columnGrid(ColumnGridComponentBuilder... components)
    • columnGrid

      public T columnGrid(ListType type, ColumnGridComponentBuilder... components)
    • setTemplate

      public T setTemplate(ReportTemplateBuilder template)
    • templateStyles

      public T templateStyles(TemplateStylesBuilder... templateStyles)
    • addTemplateStyle

      public T addTemplateStyle(TemplateStylesBuilder... templateStyles)
    • templateStyles

      public T templateStyles(StyleBuilder... templateStyles)
    • addTemplateStyle

      public T addTemplateStyle(StyleBuilder... templateStyles)
    • parameters

      public T parameters(ParameterBuilder<?>... parameters)
    • addParameter

      public T addParameter(String name, Object value)
    • addParameter

      public T addParameter(String name, Class<?> valueClass)
    • addParameter

      public T addParameter(ParameterBuilder<?>... parameters)
    • setParameter

      public T setParameter(String name, Object value)
    • setParameters

      public T setParameters(Map<String,Object> parameters)
    • fields

      public T fields(FieldBuilder<?>... fields)
    • addField

      public T addField(String name, Class<?> valueClass)
    • addField

      public <U> T addField(String name, DRIDataType<? super U,U> dataType)
    • addField

      public T addField(FieldBuilder<?>... fields)
    • variables

      public T variables(VariableBuilder<?>... variables)
    • addVariable

      public T addVariable(VariableBuilder<?>... variables)
    • sortBy

      public T sortBy(TextColumnBuilder<?>... sortColumns)
      Adds a sort field to the dataset
      Parameters:
      sortColumns - columns to be sorted
      Returns:
      a report builder
    • sortBy

      public T sortBy(SortBuilder... sorts)
      Adds a sort field to the dataset
      Parameters:
      sorts - the sort definitions
      Returns:
      a report builder
    • addSort

      public T addSort(SortBuilder... sorts)
      Adds a sort field to the dataset
      Parameters:
      sorts - the sort definitions
      Returns:
      a report builder
    • columns

      public T columns(ColumnBuilder<?,?>... columns)
    • addColumn

      public T addColumn(ColumnBuilder<?,?>... columns)
    • setDefaultFont

      public T setDefaultFont(FontBuilder defaultFont)
    • setTextStyle

      public T setTextStyle(ReportStyleBuilder textStyle)
    • setColumnTitleStyle

      public T setColumnTitleStyle(ReportStyleBuilder columnTitleStyle)
    • setColumnStyle

      public T setColumnStyle(ReportStyleBuilder columnStyle)
    • setGroupTitleStyle

      public T setGroupTitleStyle(ReportStyleBuilder groupTitleStyle)
    • setGroupStyle

      public T setGroupStyle(ReportStyleBuilder groupStyle)
    • setSubtotalStyle

      public T setSubtotalStyle(ReportStyleBuilder subtotalStyle)
    • setImageStyle

      public T setImageStyle(ReportStyleBuilder imageStyle)
    • setChartStyle

      public T setChartStyle(ReportStyleBuilder chartStyle)
    • setBarcodeStyle

      public T setBarcodeStyle(ReportStyleBuilder barcodeStyle)
    • highlightDetailOddRows

      public T highlightDetailOddRows()
    • setHighlightDetailOddRows

      public T setHighlightDetailOddRows(Boolean highlightDetailOddRows)
    • setDetailOddRowStyle

      public T setDetailOddRowStyle(SimpleStyleBuilder detailOddRowStyle)
    • highlightDetailEvenRows

      public T highlightDetailEvenRows()
    • setHighlightDetailEvenRows

      public T setHighlightDetailEvenRows(Boolean highlightDetailEvenRows)
    • setDetailEvenRowStyle

      public T setDetailEvenRowStyle(SimpleStyleBuilder detailEvenRowStyle)
    • detailRowHighlighters

      public T detailRowHighlighters(ConditionalStyleBuilder... detailRowHighlighters)
    • addDetailRowHighlighter

      public T addDetailRowHighlighter(ConditionalStyleBuilder... detailRowHighlighters)
    • subtotalsAtTitle

      public T subtotalsAtTitle(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtTitle

      public T addSubtotalAtTitle(SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtPageHeader

      public T subtotalsAtPageHeader(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtPageHeader

      public T addSubtotalAtPageHeader(SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtPageFooter

      public T subtotalsAtPageFooter(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtPageFooter

      public T addSubtotalAtPageFooter(SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtColumnHeader

      public T subtotalsAtColumnHeader(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtColumnHeader

      public T addSubtotalAtColumnHeader(SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtColumnFooter

      public T subtotalsAtColumnFooter(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtColumnFooter

      public T addSubtotalAtColumnFooter(SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtGroupHeader

      public T subtotalsAtGroupHeader(GroupBuilder<?> group, SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtGroupHeader

      public T addSubtotalAtGroupHeader(GroupBuilder<?> group, SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtGroupFooter

      public T subtotalsAtGroupFooter(GroupBuilder<?> group, SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtGroupFooter

      public T addSubtotalAtGroupFooter(GroupBuilder<?> group, SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtFirstGroupHeader

      public T subtotalsAtFirstGroupHeader(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtFirstGroupHeader

      public T addSubtotalAtFirstGroupHeader(SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtFirstGroupFooter

      public T subtotalsAtFirstGroupFooter(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtFirstGroupFooter

      public T addSubtotalAtFirstGroupFooter(SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtLastGroupHeader

      public T subtotalsAtLastGroupHeader(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtLastGroupHeader

      public T addSubtotalAtLastGroupHeader(SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtLastGroupFooter

      public T subtotalsAtLastGroupFooter(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtLastGroupFooter

      public T addSubtotalAtLastGroupFooter(SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtLastPageFooter

      public T subtotalsAtLastPageFooter(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtLastPageFooter

      public T addSubtotalAtLastPageFooter(SubtotalBuilder<?,?>... subtotals)
    • subtotalsAtSummary

      public T subtotalsAtSummary(SubtotalBuilder<?,?>... subtotals)
    • addSubtotalAtSummary

      public T addSubtotalAtSummary(SubtotalBuilder<?,?>... subtotals)
    • subtotalsOfPercentageAtGroupHeader

      public T subtotalsOfPercentageAtGroupHeader(GroupBuilder<?> group, PercentageSubtotalBuilder... subtotals)
    • addSubtotalOfPercentageAtGroupHeader

      public T addSubtotalOfPercentageAtGroupHeader(GroupBuilder<?> group, PercentageSubtotalBuilder... subtotals)
    • subtotalsOfPercentageAtGroupFooter

      public T subtotalsOfPercentageAtGroupFooter(GroupBuilder<?> group, PercentageSubtotalBuilder... subtotals)
    • addSubtotalOfPercentageAtGroupFooter

      public T addSubtotalOfPercentageAtGroupFooter(GroupBuilder<?> group, PercentageSubtotalBuilder... subtotals)
    • groupBy

      public T groupBy(ValueColumnBuilder<?,?>... groupColumns)
    • groupBy

      public T groupBy(GroupBuilder<?>... groups)
    • addGroup

      public T addGroup(GroupBuilder<?>... groups)
    • tableOfContents

      public T tableOfContents()
    • tableOfContents

      public T tableOfContents(TableOfContentsCustomizerBuilder tableOfContentsCustomizer)
    • tableOfContents

      public T tableOfContents(DRITableOfContentsCustomizer tableOfContentsCustomizer)
    • setTableOfContents

      public T setTableOfContents(Boolean tableOfContents)
    • setTableOfContents

      public T setTableOfContents(TableOfContentsCustomizerBuilder tableOfContentsCustomizer)
    • setTableOfContents

      public T setTableOfContents(DRITableOfContentsCustomizer tableOfContentsCustomizer)
    • setFilterExpression

      public T setFilterExpression(DRIExpression<Boolean> filterExpression)
      Sets a dataset filter expression. The expression must be a type of Boolean
      Parameters:
      filterExpression - the filter expression
      Returns:
      a report builder
    • setTitleSplitType

      public T setTitleSplitType(SplitType splitType)
      Sets the title band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the title split type
      Returns:
      a report builder
    • setTitlePrintWhenExpression

      public T setTitlePrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setTitleStyle

      public T setTitleStyle(ReportStyleBuilder style)
      Sets a title band style
      Parameters:
      style - the title band style
      Returns:
      a report builder
    • setTitleBackgroundComponent

      public T setTitleBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • title

      public T title(ComponentBuilder<?,?>... components)
      Adds components to the title band. The band is printed on the first page and only once.
      Parameters:
      components - the title components
      Returns:
      a report builder
    • addTitle

      public T addTitle(ComponentBuilder<?,?>... components)
      Adds components to the title band. The band is printed on the first page and only once.
      Parameters:
      components - the title components
      Returns:
      a report builder
    • setPageHeaderSplitType

      public T setPageHeaderSplitType(SplitType splitType)
      Sets the page header band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the page header split type
      Returns:
      a report builder
    • setPageHeaderPrintWhenExpression

      public T setPageHeaderPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setPageHeaderStyle

      public T setPageHeaderStyle(ReportStyleBuilder style)
      Sets a page header band style
      Parameters:
      style - the page header band style
      Returns:
      a report builder
    • setPageHeaderBackgroundComponent

      public T setPageHeaderBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • pageHeader

      public T pageHeader(ComponentBuilder<?,?>... components)
      Adds components to the page header band. The band is printed on each page at the top of the page.
      Parameters:
      components - the page header components
      Returns:
      a report builder
    • addPageHeader

      public T addPageHeader(ComponentBuilder<?,?>... components)
      Adds components to the page header band. The band is printed on each page at the top of the page.
      Parameters:
      components - the page header components
      Returns:
      a report builder
    • setPageFooterSplitType

      public T setPageFooterSplitType(SplitType splitType)
      Sets the page footer band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the page footer split type
      Returns:
      a report builder
    • setPageFooterPrintWhenExpression

      public T setPageFooterPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setPageFooterStyle

      public T setPageFooterStyle(ReportStyleBuilder style)
      Sets a page footer band style
      Parameters:
      style - the page footer band style
      Returns:
      a report builder
    • setPageFooterBackgroundComponent

      public T setPageFooterBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • pageFooter

      public T pageFooter(ComponentBuilder<?,?>... components)
      Adds components to the page footer band. The band is printed on each page at the bottom of the page.
      Parameters:
      components - the page footer components
      Returns:
      a report builder
    • addPageFooter

      public T addPageFooter(ComponentBuilder<?,?>... components)
      Adds components to the page footer band. The band is printed on each page at the bottom of the page.
      Parameters:
      components - the page footer components
      Returns:
      a report builder
    • setColumnHeaderSplitType

      public T setColumnHeaderSplitType(SplitType splitType)
      Sets the column header band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the column header split type
      Returns:
      a report builder
    • setColumnHeaderPrintWhenExpression

      public T setColumnHeaderPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setColumnHeaderStyle

      public T setColumnHeaderStyle(ReportStyleBuilder style)
      Sets a column header band style
      Parameters:
      style - the column header band style
      Returns:
      a report builder
    • setColumnHeaderBackgroundComponent

      public T setColumnHeaderBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • columnHeader

      public T columnHeader(ComponentBuilder<?,?>... components)
      Adds components to the column header band. The band is printed on each page at the top of the page and it's placed below the page header band.
      Parameters:
      components - the column header components
      Returns:
      a report builder
    • addColumnHeader

      public T addColumnHeader(ComponentBuilder<?,?>... components)
      Adds components to the column header band. The band is printed on each page at the top of the page and it's placed below the page header band.
      Parameters:
      components - the column header components
      Returns:
      a report builder
    • setColumnFooterSplitType

      public T setColumnFooterSplitType(SplitType splitType)
      Sets the column footer band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the column footer split type
      Returns:
      a report builder
    • setColumnFooterPrintWhenExpression

      public T setColumnFooterPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setColumnFooterStyle

      public T setColumnFooterStyle(ReportStyleBuilder style)
      Sets a column footer band style
      Parameters:
      style - the column footer band style
      Returns:
      a report builder
    • setColumnFooterBackgroundComponent

      public T setColumnFooterBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • columnFooter

      public T columnFooter(ComponentBuilder<?,?>... components)
      Adds components to the column footer band. The band is printed on each page at the bottom of the page and it's placed above the page footer band.
      Parameters:
      components - the column footer components
      Returns:
      a report builder
    • addColumnFooter

      public T addColumnFooter(ComponentBuilder<?,?>... components)
      Adds components to the column footer band. The band is printed on each page at the bottom of the page and it's placed above the page footer band.
      Parameters:
      components - the column footer components
      Returns:
      a report builder
    • setGroupHeaderSplitType

      public T setGroupHeaderSplitType(GroupBuilder<?> group, SplitType splitType)
      Sets the group header band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      group - the group to which to apply the split type
      splitType - the group header split type
      Returns:
      a report builder
    • setGroupHeaderPrintWhenExpression

      public T setGroupHeaderPrintWhenExpression(GroupBuilder<?> group, DRIExpression<Boolean> printWhenExpression)
    • setGroupHeaderStyle

      public T setGroupHeaderStyle(GroupBuilder<?> group, ReportStyleBuilder style)
      Sets a group header band style
      Parameters:
      group - the group to which to apply the style
      style - the group header band style
      Returns:
      a report builder
    • setGroupHeaderBackgroundComponent

      public T setGroupHeaderBackgroundComponent(GroupBuilder<?> group, ComponentBuilder<?,?> backgroundComponent)
    • groupHeader

      public T groupHeader(GroupBuilder<?> group, ComponentBuilder<?,?>... components)
      Adds components to the group header band. The band is printed for each data group. It's placed above the grouped data and between the column header and footer.
      Parameters:
      group - the group to which to add the components
      components - the group header components
      Returns:
      a report builder
    • addGroupHeader

      public T addGroupHeader(GroupBuilder<?> group, ComponentBuilder<?,?>... components)
      Adds components to the group header band. The band is printed for each data group. It's placed above the grouped data and between the column header and footer.
      Parameters:
      group - the group to which to add the components
      components - the group header components
      Returns:
      a report builder
    • setGroupFooterSplitType

      public T setGroupFooterSplitType(GroupBuilder<?> group, SplitType splitType)
      Sets the group footer band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      group - the group to which to apply the split type
      splitType - the group footer split type
      Returns:
      a report builder
    • setGroupFooterPrintWhenExpression

      public T setGroupFooterPrintWhenExpression(GroupBuilder<?> group, DRIExpression<Boolean> printWhenExpression)
    • setGroupFooterStyle

      public T setGroupFooterStyle(GroupBuilder<?> group, ReportStyleBuilder style)
      Sets a group footer band style
      Parameters:
      group - the group to which to apply the style
      style - the group footer band style
      Returns:
      a report builder
    • setGroupFooterBackgroundComponent

      public T setGroupFooterBackgroundComponent(GroupBuilder<?> group, ComponentBuilder<?,?> backgroundComponent)
    • groupFooter

      public T groupFooter(GroupBuilder<?> group, ComponentBuilder<?,?>... components)
      Adds components to the group footer band. The band is printed for each data group. It's placed below the grouped data and between the column header and footer.
      Parameters:
      group - the group to which to add the components
      components - the group footer components
      Returns:
      a report builder
    • addGroupFooter

      public T addGroupFooter(GroupBuilder<?> group, ComponentBuilder<?,?>... components)
      Adds components to the group footer band. The band is printed for each data group. It's placed below the grouped data and between the column header and footer.
      Parameters:
      group - the group to which to add the components
      components - the group footer components
      Returns:
      a report builder
    • setDetailSplitType

      public T setDetailSplitType(SplitType splitType)
      Sets the detail band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the detail split type
      Returns:
      a report builder
    • setDetailPrintWhenExpression

      public T setDetailPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setDetailStyle

      public T setDetailStyle(ReportStyleBuilder style)
      Sets a detail band style
      Parameters:
      style - the detail band style
      Returns:
      a report builder
    • setDetailBackgroundComponent

      public T setDetailBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • detail

      public T detail(ComponentBuilder<?,?>... components)
      Adds components to the detail band. The band is printed for each record row in the data source and it's placed between the column header and footer band.
      Parameters:
      components - the detail components
      Returns:
      a report builder
    • addDetail

      public T addDetail(ComponentBuilder<?,?>... components)
      Adds components to the detail band. The band is printed for each record row in the data source and it's placed between the column header and footer band.
      Parameters:
      components - the detail components
      Returns:
      a report builder
    • setDetailHeaderSplitType

      public T setDetailHeaderSplitType(SplitType splitType)
      Sets the detail header band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the detail header split type
      Returns:
      a report builder
    • setDetailHeaderPrintWhenExpression

      public T setDetailHeaderPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setDetailHeaderStyle

      public T setDetailHeaderStyle(ReportStyleBuilder style)
      Sets a detail header band style
      Parameters:
      style - the detail header band style
      Returns:
      a report builder
    • setDetailHeaderBackgroundComponent

      public T setDetailHeaderBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • detailHeader

      public T detailHeader(ComponentBuilder<?,?>... components)
      Adds components to the detail header band. The band is printed for each record row in the data source and it's placed above the detail band.
      Parameters:
      components - the detail header components
      Returns:
      a report builder
    • addDetailHeader

      public T addDetailHeader(ComponentBuilder<?,?>... components)
      Adds components to the detail header band. The band is printed for each record row in the data source and it's placed above the detail band.
      Parameters:
      components - the detail header components
      Returns:
      a report builder
    • setDetailFooterSplitType

      public T setDetailFooterSplitType(SplitType splitType)
      Sets the detail footer band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the detail footer split type
      Returns:
      a report builder
    • setDetailFooterPrintWhenExpression

      public T setDetailFooterPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setDetailFooterStyle

      public T setDetailFooterStyle(ReportStyleBuilder style)
      Sets a detail footer band style
      Parameters:
      style - the detail footer band style
      Returns:
      a report builder
    • setDetailFooterBackgroundComponent

      public T setDetailFooterBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • detailFooter

      public T detailFooter(ComponentBuilder<?,?>... components)
      Adds components to the detail footer band. The band is printed for each record row in the data source and it's placed below the detail band.
      Parameters:
      components - the detail footer components
      Returns:
      a report builder
    • addDetailFooter

      public T addDetailFooter(ComponentBuilder<?,?>... components)
      Adds components to the detail footer band. The band is printed for each record row in the data source and it's placed below the detail band.
      Parameters:
      components - the detail footer components
      Returns:
      a report builder
    • setLastPageFooterSplitType

      public T setLastPageFooterSplitType(SplitType splitType)
      Sets the last page footer band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the last page footer split type
      Returns:
      a report builder
    • setLastPageFooterPrintWhenExpression

      public T setLastPageFooterPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setLastPageFooterStyle

      public T setLastPageFooterStyle(ReportStyleBuilder style)
      Sets a last page footer band style
      Parameters:
      style - the last page footer band style
      Returns:
      a report builder
    • setLastPageFooterBackgroundComponent

      public T setLastPageFooterBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • lastPageFooter

      public T lastPageFooter(ComponentBuilder<?,?>... components)
      Adds components to the last page footer band. The band is printed only on the last page at the bottom of the page.
      Parameters:
      components - the last page footer components
      Returns:
      a report builder
    • addLastPageFooter

      public T addLastPageFooter(ComponentBuilder<?,?>... components)
      Adds components to the last page footer band. The band is printed only on the last page at the bottom of the page.
      Parameters:
      components - the last page footer components
      Returns:
      a report builder
    • setSummarySplitType

      public T setSummarySplitType(SplitType splitType)
      Sets the summary band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the summary split type
      Returns:
      a report builder
    • setSummaryPrintWhenExpression

      public T setSummaryPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setSummaryStyle

      public T setSummaryStyle(ReportStyleBuilder style)
      Sets a summary band style
      Parameters:
      style - the summary band style
      Returns:
      a report builder
    • setSummaryBackgroundComponent

      public T setSummaryBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • summary

      public T summary(ComponentBuilder<?,?>... components)
      Adds components to the summary band. The band is printed on the last page and only once.
      Parameters:
      components - the summary components
      Returns:
      a report builder
    • addSummary

      public T addSummary(ComponentBuilder<?,?>... components)
      Adds components to the summary band. The band is printed on the last page and only once.
      Parameters:
      components - the summary components
      Returns:
      a report builder
    • setNoDataSplitType

      public T setNoDataSplitType(SplitType splitType)
      Sets the no data band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the no data split type
      Returns:
      a report builder
    • setNoDataPrintWhenExpression

      public T setNoDataPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setNoDataStyle

      public T setNoDataStyle(ReportStyleBuilder style)
      Sets a no data band style
      Parameters:
      style - the no data band style
      Returns:
      a report builder
    • setNoDataBackgroundComponent

      public T setNoDataBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • noData

      public T noData(ComponentBuilder<?,?>... components)
      Adds components to the no data band. The band is printed only when the data source is empty. It's used to show the information that there are not any data in the report.
      Parameters:
      components - the no data components
      Returns:
      a report builder
    • addNoData

      public T addNoData(ComponentBuilder<?,?>... components)
      Adds components to the no data band. The band is printed only when the data source is empty. It's used to show the information that there are not any data in the report.
      Parameters:
      components - the no data components
      Returns:
      a report builder
    • setBackgroundSplitType

      public T setBackgroundSplitType(SplitType splitType)
      Sets the background band split type.
      SplitType.PREVENT - prevents the band from splitting
      SplitType.STRETCH - the band can be split, but never within its declared height
      SplitType.IMMEDIATE - the band can be split
      Parameters:
      splitType - the background split type
      Returns:
      a report builder
    • setBackgroundPrintWhenExpression

      public T setBackgroundPrintWhenExpression(DRIExpression<Boolean> printWhenExpression)
    • setBackgroundStyle

      public T setBackgroundStyle(ReportStyleBuilder style)
      Sets a background band style
      Parameters:
      style - the background band style
      Returns:
      a report builder
    • setBackgroundBackgroundComponent

      public T setBackgroundBackgroundComponent(ComponentBuilder<?,?> backgroundComponent)
    • background

      public T background(ComponentBuilder<?,?>... components)
      Adds components to the background band. The band is printed on each page. It's mostly used for adding watermarks to the report.
      Parameters:
      components - the background components
      Returns:
      a report builder
    • addBackground

      public T addBackground(ComponentBuilder<?,?>... components)
      Adds components to the background band. The band is printed on each page. It's mostly used for adding watermarks to the report.
      Parameters:
      components - the background components
      Returns:
      a report builder
    • getReport

      public DRReport getReport()