Class JRFillSubreport

    • Field Detail

      • EXCEPTION_MESSAGE_KEY_PROPERTY_NOT_SET

        public static final java.lang.String EXCEPTION_MESSAGE_KEY_PROPERTY_NOT_SET
        See Also:
        Constant Field Values
      • EXCEPTION_MESSAGE_KEY_NO_REWINDABLE_DATA_SOURCE

        public static final java.lang.String EXCEPTION_MESSAGE_KEY_NO_REWINDABLE_DATA_SOURCE
        See Also:
        Constant Field Values
      • EXCEPTION_MESSAGE_KEY_UNSUPPORTED_SECTION_TYPE

        public static final java.lang.String EXCEPTION_MESSAGE_KEY_UNSUPPORTED_SECTION_TYPE
        See Also:
        Constant Field Values
      • EXCEPTION_MESSAGE_KEY_UNKNOWN_SOURCE_CLASS

        public static final java.lang.String EXCEPTION_MESSAGE_KEY_UNKNOWN_SOURCE_CLASS
        See Also:
        Constant Field Values
      • PROPERTY_SUBREPORT_GENERATE_RECTANGLE

        public static final java.lang.String PROPERTY_SUBREPORT_GENERATE_RECTANGLE
        Property used to specify when rectangle elements should be generated for subreports during the report filling. If the property value is always, rectangle elements will be always generated, otherwise they will be created only if the subreport element is not transparent or it has properties
        See Also:
        Constant Field Values
      • SUBREPORT_GENERATE_RECTANGLE_ALWAYS

        public static final java.lang.String SUBREPORT_GENERATE_RECTANGLE_ALWAYS
        See Also:
        Constant Field Values
    • Method Detail

      • getModeValue

        public ModeEnum getModeValue()
        Description copied from interface: JRCommonElement
        Returns the element transparency mode. The default value depends on the type of the report element. Graphic elements like rectangles and lines are opaque by default, but the images are transparent. Both static texts and text fields are transparent by default, and so are the subreport elements.
        Specified by:
        getModeValue in interface JRCommonElement
        Overrides:
        getModeValue in class JRFillElement
      • usingCache

        public boolean usingCache()
      • isRunToBottom

        public java.lang.Boolean isRunToBottom()
        Description copied from interface: JRSubreport
        Specifies whether the subreport element will consume the entire vertical space available on the report page.
        Specified by:
        isRunToBottom in interface JRSubreport
        Returns:
        whether the subreport element will consume the entire space down to the bottom of the page
        See Also:
        JRSubreport.setRunToBottom(Boolean)
      • setRunToBottom

        public void setRunToBottom​(java.lang.Boolean runToBottom)
        Description copied from interface: JRSubreport
        Sets the flag that Specifies whether the subreport element will consume the entire vertical space available on the report page.

        This flag should be set to true if the subreport needs to always print its column and page footers at the bottom of the report page, even when the subreport data does not stretch to the bottom.

        Note that when isFloatColumnFooter is set for the subreport, the column footers will not be printed at the bottom of the page even if this flag is set.

        Specified by:
        setRunToBottom in interface JRSubreport
        Parameters:
        runToBottom - whether the subreport element will consume the entire space down to the bottom of the page
      • getPrintElements

        protected java.util.Collection<JRPrintElement> getPrintElements()
      • getPrintContentsWidth

        protected int getPrintContentsWidth()
      • subreportPageFilled

        public void subreportPageFilled()
      • evaluateSubreport

        protected void evaluateSubreport​(byte evaluation)
                                  throws JRException
        Throws:
        JRException
      • evaluateParameterValues

        protected java.util.Map<java.lang.String,​java.lang.Object> evaluateParameterValues​(byte evaluation)
                                                                                          throws JRException
        Throws:
        JRException
      • evictReportEvaluator

        protected void evictReportEvaluator()
      • isReorderBandElements

        protected boolean isReorderBandElements()
      • getParameterValues

        public static java.util.Map<java.lang.String,​java.lang.Object> getParameterValues​(BaseReportFiller filler,
                                                                                                JRExpression parametersMapExpression,
                                                                                                JRDatasetParameter[] subreportParameters,
                                                                                                byte evaluation,
                                                                                                boolean ignoreNullExpressions,
                                                                                                boolean removeResourceBundle,
                                                                                                boolean removeFormatFactory)
                                                                                         throws JRException
        Utility method used for constructing a parameter values map for subreports, sub datasets and crosstabs.
        Parameters:
        filler - report filler
        parametersMapExpression - expression that yields bulk parameter values map
        subreportParameters - list of individual parameter values
        evaluation - evaluation type
        ignoreNullExpressions - whether to ignore individual parameter value expressions
        removeResourceBundle - whether to remove the REPORT_RESOURCE_BUNDLE value from the bulk values map
        Returns:
        the parameter values map
        Throws:
        JRException
      • getParameterValues

        public static java.util.Map<java.lang.String,​java.lang.Object> getParameterValues​(BaseReportFiller filler,
                                                                                                JRFillExpressionEvaluator expressionEvaluator,
                                                                                                JRExpression parametersMapExpression,
                                                                                                JRDatasetParameter[] subreportParameters,
                                                                                                byte evaluation,
                                                                                                boolean ignoreNullExpressions,
                                                                                                boolean removeResourceBundle,
                                                                                                boolean removeFormatFactory)
                                                                                         throws JRException
        Utility method used for constructing a parameter values map for subreports, sub datasets and crosstabs.
        Parameters:
        filler - report filler
        expressionEvaluator - expression evaluator
        parametersMapExpression - expression that yields bulk parameter values map
        subreportParameters - list of individual parameter values
        evaluation - evaluation type
        ignoreNullExpressions - whether to ignore individual parameter value expressions
        removeResourceBundle - whether to remove the REPORT_RESOURCE_BUNDLE value from the bulk values map
        Returns:
        the parameter values map
        Throws:
        JRException
      • generateRectangleOption

        protected java.lang.String generateRectangleOption()
      • resolveElement

        protected void resolveElement​(JRPrintElement element,
                                      byte evaluation)
        Description copied from class: JRFillElement
        Resolves an element.
        Specified by:
        resolveElement in class JRFillElement
        Parameters:
        element - the element
        evaluation - the evaluation type
      • getUsingCache

        public java.lang.Boolean getUsingCache()
        Description copied from interface: JRSubreport
        Indicates if the engine is loading the current subreport from cache. Implementations of this method return the actual value for the internal flag that was explicitly set on this subreport.
        Specified by:
        getUsingCache in interface JRSubreport
        Returns:
        Boolean.TRUE if the subreport should be loaded from cache, Boolean.FALSE otherwise or null in case the flag was never explicitly set on this subreport element
      • setUsingCache

        public void setUsingCache​(java.lang.Boolean isUsingCache)
        Description copied from interface: JRSubreport
        Specifies if the engine should be loading the current subreport from cache. If set to Boolean.TRUE, the reporting engine will try to recognize previously loaded subreports using their specified source. For example, it will recognize an subreport if the subreport source is a file name that it has already loaded, or if it is the same URL.

        If set to null, the engine will rely on some default value which depends on the type of the subreport expression. The cache is turned on by default only for subreports that have java.lang.String objects in their expressions.

        Specified by:
        setUsingCache in interface JRSubreport
      • getContentsStretchHeight

        protected int getContentsStretchHeight()
      • getReportLocation

        protected java.lang.String getReportLocation()
      • registerReportStyles

        protected void registerReportStyles​(java.util.List<JRStyle> styles)
      • getReportName

        protected java.lang.String getReportName()
      • isSplitTypePreventInhibited

        protected boolean isSplitTypePreventInhibited​(boolean isTopLevelCall)