Class JRBandDataDataSource
java.lang.Object
io.jmix.reports.yarg.formatters.impl.jasper.JRBandDataDataSource
- All Implemented Interfaces:
net.sf.jasperreports.engine.JRDataSource
public class JRBandDataDataSource
extends Object
implements net.sf.jasperreports.engine.JRDataSource
Provides bypass of BandData tree.
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
containsVisitedBand
(String bandName) protected BandData
createNewBand
(String bandName) getFieldValue
(net.sf.jasperreports.engine.JRField jrField) boolean
next()
Maintains visitedBands to continue bypass on the same level after return from deeper level of hierarchy.subDataSource
(String bandName) Search for first level children band with specified name and return new datasource with this band as root element.
-
Field Details
-
root
-
currentBand
-
currentIterator
-
visitedBands
-
readBands
-
-
Constructor Details
-
JRBandDataDataSource
Accepts root element. Goes down one level because root must not have elements.- Parameters:
root
- of the tree
-
-
Method Details
-
next
public boolean next() throws net.sf.jasperreports.engine.JRExceptionMaintains visitedBands to continue bypass on the same level after return from deeper level of hierarchy. Creates iterator for each level.- Specified by:
next
in interfacenet.sf.jasperreports.engine.JRDataSource
- Throws:
net.sf.jasperreports.engine.JRException
-
getFieldValue
public Object getFieldValue(net.sf.jasperreports.engine.JRField jrField) throws net.sf.jasperreports.engine.JRException - Specified by:
getFieldValue
in interfacenet.sf.jasperreports.engine.JRDataSource
- Throws:
net.sf.jasperreports.engine.JRException
-
subDataSource
Search for first level children band with specified name and return new datasource with this band as root element. -
createNewBand
-
containsVisitedBand
-