Package com.inet.report
Class Section
- java.lang.Object
-
- com.inet.report.ReportComponent
-
- com.inet.report.Region
-
- com.inet.report.Section
-
- All Implemented Interfaces:
ElementContainer
,NodeParser
,com.inet.report.ReferenceHolder
,SimpleElementContainer
,java.io.Serializable
public class Section extends Region implements ElementContainer
TheSection
class represents the sections of a report.
Each report consists of several sections which are associated withArea
s of type: Report Header, Page Header, Group Header, Detail, Group Footer, Report Footer and Page Footer.
Here you can add elements to your report, like lines, boxes, text fields, pictures and of course fields with dynamic content, calledFieldElement
. To do this you can use the various add methods of this class.
The height and the width of a section is generated dynamically. Always when you are adding an element the section height and width would be checked. Use theReportComponent.setHeight(int)
andReportComponent.setWidth(int)
methods for changing it manually.
All elements in a section are bundled in aVector
, that you can access withgetElementsV()
. The index of each element is the position in thisVector
object. You need the index if you want to remove an element (withremove(Element)
).
This class is part of the RDC.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_HEIGHT
Default value of the property 'height'.-
Fields inherited from class com.inet.report.Region
DETAIL, GROUP_FOOTER, GROUP_HEADER, PAGE_FOOTER, PAGE_HEADER, REPORT_FOOTER, REPORT_HEADER
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Box
addBox(int xpos, int ypos, int objwidth, int objheight)
Adds a newBox
to thisSection
and returns it.Box
addBox(int xpos, int ypos, int objwidth, int objheight, int y2, Section endSection)
Adds a newBox
to thisSection
and returns it.Chart2
addChart2(ChartStyle style, int xpos, int ypos, int objwidth, int objheight)
Adds a new chart element to the container and returns it.CrossTab
addCrossTab(int xpos, int ypos, SummaryField field)
Adds the simplest possible cross table (at least on field for summarization) into thisSection
and returns it.DatabasePicture
addDatabasePicture(Field field, int xpos, int ypos, int objwidth, int objheight)
Adds a newDatabasePicture
(e.g.FieldElement
addFieldElement(Field field, int xpos, int ypos, int objwidth, int objheight)
com.inet.report.FormFieldElement
addFormField(int xpos, int ypos, int objwidth, int objheight)
Adds a new form field element to the container.Line
addHorizontalLine(int xpos, int ypos, int objwidth)
Adds a new horizontal line to the container and returns it.com.inet.report.InteractiveSorting
addInteractiveSorting(Field field, int xpos, int ypos, int objwidth, int objheight)
Adds a new InteractiveSorting element to the container.JavaBean
addJavaBean(java.lang.String className, int xpos, int ypos, int objwidth, int objheight)
Add a new JavaBean to the container.Picture
addPicture(int xpos, int ypos, int objwidth, int objheight, byte[] buffer)
Adds a new picture element to the container and returns it.Picture
addPicture(int xpos, int ypos, int objwidth, int objheight, int[] buffer)
Adds a new picture element to the container and returns it.Picture
addPicture(int xpos, int ypos, int objwidth, int objheight, java.awt.image.BufferedImage im)
Adds a new picture element to the container and returns it.Picture
addPicture(int xpos, int ypos, int objwidth, int objheight, java.io.File file)
Adds a new picture element to the container and returns it.Picture
addPicture(int xpos, int ypos, int objwidth, int objheight, java.lang.String fileName)
Adds a new picture element to the container and returns it.SignatureForm
addSignatureForm(int xpos, int ypos, int objwidth, int objheight)
Adds a newSignatureForm
element to thisSection
.Subreport
addSubreport(int xpos, int ypos, int objwidth, int objheight)
Adds a new subreport element to the container and returns it.Subreport
addSubreport(int xpos, int ypos, int objwidth, int objheight, java.lang.String filename)
Adds a new subreport element with definition from file to the container and returns it.Text
addText(int xpos, int ypos, int objwidth, int objheight)
Adds a new text element to the container.Line
addVerticalLine(int xpos, int ypos, int objheight)
Adds a new vertical line to the container and returns it.Line
addVerticalLine(int xpos, int ypos, int y2, Section endSection)
Adds a new vertical line to the container and returns it.int
cleanForDataExport()
AllElements
that are notFieldElements
will be removed from thisSection
.void
copyContent(Section source)
Copies content and properties of the source section into target section.void
copyContent(SimpleElementContainer source)
Copies content and properties of the source container into this container.void
copyProperties(Section source)
Some properties of the source section will be copied to this section.Element[]
getElements()
Returns anArray
containing all elements in this section.java.util.Vector<Element>
getElementsV()
Returns aVector
containing all elements in this section.java.lang.String
getName()
Returns the name of the section - i.e.java.lang.Object
getParent()
Returns the parentArea
of theSection
.java.util.List<FormulaField>
getPropertyFormulas()
Returns a list with all property formulas that are set for this report element.Element
getReportElement(int idx)
Returns a report element.int
getReportElementsCount()
Counts the number of Report Elements in this section and returns it.java.lang.String
getSectionNameByNumber(int number)
Generates a name ending usually used for section names.java.util.List<Element>
getSubComponents()
Returns allReportComponent
s that are descendants of this one.boolean
getSuppressIfBlank()
Returns the value of the property 'suppress if blank'.FormulaField
getSuppressIfBlankFormula()
Returns the formula for the property 'suppress if blank'.boolean
getUnderlayFollow()
Returns the value of the property 'underlay follow'.FormulaField
getUnderlayFollowFormula()
Returns the formula for the property 'underlay follow'.boolean
getUseColor()
Returns the value of the property 'useColor'.int
getWidth()
Returns the width of the section.int
indexOf()
Returns the current index of thisSection
in thisArea
.void
moveElement(Element elem, Section dest)
Moves theElement elem
from thisSection
to the destinationSection dest
.void
moveElement(Element elem, SimpleElementContainer dest)
Moves the elementelem
from this container to the destination containerdest
.java.lang.String
paramString()
Returns a string identifying this report component.NodeParser
parseElement(com.inet.report.parser.XMLTag group, java.lang.String tag, org.xml.sax.Attributes atts, java.util.Map<java.lang.String,java.lang.Object> parserMap)
FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY Internal method for reading report XMLvoid
parseEndElement(com.inet.report.parser.XMLTag group, java.lang.String tag, java.util.Map<java.lang.String,java.lang.Object> parserMap)
FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY Internal method for reading report XMLvoid
parseText(java.lang.String text, java.util.Map<java.lang.String,java.lang.Object> parserMap)
FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY Internal method for reading report XMLElement
pasteElement(java.lang.Object copy)
Paste a copy of anElement
to thisSection
.void
remove(Element elem)
Removes the given report element from the container.void
resetReferences()
FOR INTERNAL USE ONLYvoid
setReferences()
FOR INTERNAL USE ONLYvoid
setSuppressIfBlank(boolean newValue)
Sets the value of the property 'suppress if blank'.void
setSuppressIfBlankFormula(FormulaField newFormula)
Sets the formula for the property 'suppress if blank'.void
setUnderlayFollow(boolean newValue)
Sets the value of the property 'underlay follow'.void
setUnderlayFollowFormula(FormulaField newFormula)
Sets the formula for the property 'underlay follow'.void
setUseColor(boolean newValue)
Sets the value of the property 'useColor'.java.util.List<Element>
sortAndFilterSectionElements(int accuracy, boolean write_sub, boolean makeFilteredList)
FOR INTERNAL USE ONLY Method for XLS-Export: Labels, Fields, CrossTab, Line, Box and Subreport will be sorted Elements are filtered and sorted by their positions (up-down, then left-right) XLS-Export: makeFilteredList=true, because Z-order of elements must be kept Elements with negative x-coordinate will be not proceeded because of problem with IntObjectMap-
Methods inherited from class com.inet.report.Region
getAtBottomOfPageFormula, getNewPageAfterFormula, getNewPageBeforeFormula, getResetPageNumberFormula, getSuppressOnDrillDownFormula, getType, getTypeAsString, isAtBottomOfPage, isHeader, isNewPageAfter, isNewPageBefore, isResetPageNumber, isSuppressOnDrillDown, setAtBottomOfPage, setAtBottomOfPageFormula, setNewPageAfter, setNewPageAfterFormula, setNewPageBefore, setNewPageBeforeFormula, setResetPageNumber, setResetPageNumberFormula, setSuppressOnDrillDown, setSuppressOnDrillDownFormula
-
Methods inherited from class com.inet.report.ReportComponent
addPropertyChangeListener, addPropertyChangeListener, addReferencedObject, addVetoableChangeListener, addVetoableChangeListener, getBackColor, getBackColorFormula, getCustomData, getHeight, getKeepTogetherFormula, getRealReferencedObjectCount, getReferencedObjectCount, getReferencedObjects, getSuppressFormula, getX, getY, isDOMParser, isKeepTogether, isSuppress, parseDOM, removePropertyChangeListener, removePropertyChangeListener, removeReferencedObject, removeVetoableChangeListener, removeVetoableChangeListener, setBackColor, setBackColorFormula, setCustomData, setHeight, setKeepTogether, setKeepTogetherFormula, setSuppress, setSuppressFormula, setWidth, setX, setY
-
-
-
-
Field Detail
-
DEFAULT_HEIGHT
public static final int DEFAULT_HEIGHT
Default value of the property 'height'.- See Also:
- Constant Field Values
-
-
Method Detail
-
getParent
public java.lang.Object getParent() throws java.lang.IllegalStateException
Returns the parentArea
of theSection
.- Returns:
- The parent
Area
. - Throws:
java.lang.IllegalStateException
- if the type of the section is invalid.- Since:
- 6.0
-
paramString
public java.lang.String paramString()
Returns a string identifying this report component. This method is useful for logging and for debugging.- Overrides:
paramString
in classReportComponent
- Returns:
- a string identifying the ReportComponent
-
pasteElement
public Element pasteElement(java.lang.Object copy) throws ReportException
Paste a copy of anElement
to thisSection
. The parameter is not an instance ofElement
. If theElement
needs references to aField
or aGroup
then these objects must exist in thisEngine
. In the other cases aReportException
will be thrown. The coordinates on that theElement
will be paste in theSection
are the coordinates of the copied element.- Specified by:
pasteElement
in interfaceElementContainer
- Parameters:
copy
- An object created with the methodElement.copy()
.- Returns:
- The inserted
Element
. - Throws:
ReportException
- If theElement
cannot be created because of missing references.- Since:
- 6.0
- See Also:
Element.copy()
-
moveElement
public void moveElement(Element elem, Section dest) throws ReportException
Moves theElement elem
from thisSection
to the destinationSection dest
.- Parameters:
elem
- TheElement
, which should move to anotherSection
.dest
- The destinationSection
of movement.- Throws:
ReportException
- will thrown ifdest
orelem
isnull
.- Since:
- 6.0
- See Also:
Element.setIndex(int)
-
getElementsV
public java.util.Vector<Element> getElementsV()
Returns aVector
containing all elements in this section. Each element in the returned Vector is an instance of classElement
or an instance of Elements subclasses.- Specified by:
getElementsV
in interfaceSimpleElementContainer
- Returns:
- A
Vector
containing all elements in this section. - Since:
- 6.0
- See Also:
getElements()
,Element
-
getElements
public Element[] getElements()
Returns anArray
containing all elements in this section. Each field of theArray
contains an instance of classElement
or an instance of Elements subclasses.- Specified by:
getElements
in interfaceSimpleElementContainer
- Returns:
- An
Array
containing all elements in thisSection
. - Since:
- 6.0
- See Also:
getElementsV()
,Element
-
addFieldElement
public FieldElement addFieldElement(Field field, int xpos, int ypos, int objwidth, int objheight) throws ReportException
Adds a newFieldElement
(a dynamic text element based on aField
) to thisSection
and returns it. Note that for binary fields you need to use the methodaddDatabasePicture(Field, int, int, int, int)
, since picture fields are notFieldElement
s.- Specified by:
addFieldElement
in interfaceSimpleElementContainer
- Parameters:
field
- The field that should added intoSection
. May not be null.xpos
- The x-coordinate of the upper left corner in twips.ypos
- The y-coordinate of the upper left corner in twips.objwidth
- The width of the newFieldElement
in twips.objheight
- The height of the newFieldElement
in twips.- Returns:
- The created
FieldElement
ornull
if the creation was not successfull. - Throws:
ReportException
- if the value type of the field is binary - useaddDatabasePicture(Field, int, int, int, int)
instead.java.lang.IllegalArgumentException
- if the parameters x, y, width or height are negative or the field is null- Since:
- 6.0
- See Also:
DatabaseField
,FormulaField
,PromptField
,SummaryField
,SQLField
,GroupField
-
addDatabasePicture
public DatabasePicture addDatabasePicture(Field field, int xpos, int ypos, int objwidth, int objheight)
Adds a newDatabasePicture
(e.g. Blob) to thisSection
and returns it.- Specified by:
addDatabasePicture
in interfaceSimpleElementContainer
- Parameters:
field
- Field which valuetype is Field.BINARY and that should be added to the section. This can be a database field, a formula field, a prompt field or a SQL field.xpos
- x-coordinate of the upper left corner in twips.ypos
- y-coordinate of the upper left corner in twips.objwidth
- Width of the new fieldElement in twips.objheight
- Height of the new fieldElement in twips.- Returns:
- new created DatabasePicture
- Since:
- 6.0
-
addBox
public Box addBox(int xpos, int ypos, int objwidth, int objheight)
Adds a newBox
to thisSection
and returns it.- Specified by:
addBox
in interfaceSimpleElementContainer
- Parameters:
xpos
- The horizontal offset in twips.ypos
- The vertical offset in twips.objwidth
- The width of the box in twips.objheight
- The height of the box in twips.- Returns:
- The created
Box
element ornull
if the creation was not successfull - Throws:
java.lang.IllegalArgumentException
- If the parameter width or height are negative.- Since:
- 6.0
-
addBox
public Box addBox(int xpos, int ypos, int objwidth, int objheight, int y2, Section endSection)
Adds a newBox
to thisSection
and returns it.- Specified by:
addBox
in interfaceElementContainer
- Parameters:
xpos
- The horizontal offset in twips.ypos
- The vertical offset in twips.objwidth
- The width of the box in twips.objheight
- The minimal height of the box in start section in twips.y2
- The vertical offset of the end point in end sectionendSection
- The section where the box ends- Returns:
- The created box element
- Since:
- 6.0
-
addCrossTab
public CrossTab addCrossTab(int xpos, int ypos, SummaryField field)
Adds the simplest possible cross table (at least on field for summarization) into thisSection
and returns it. To make this cross table more complex use the add and append methods in classcom.inet.report.CrossTab
.- Specified by:
addCrossTab
in interfaceElementContainer
- Parameters:
xpos
- The x position of the upper left corner of the whole cross table in twips..ypos
- The y position of the upper left corner of the whole cross table in twips..field
- The field to summarize in cross table.- Returns:
- The created Crosstab.
- Throws:
java.lang.IllegalArgumentException
- if the parameters x or y are negative- Since:
- 6.0
- See Also:
CrossTab
-
addChart2
public Chart2 addChart2(ChartStyle style, int xpos, int ypos, int objwidth, int objheight)
Adds a new chart element to the container and returns it. The chart type is defined by the parameter style. You can use e.g.BarStyle.BAR2D
for a simple bar chart 2D. To see which chart types are allowed see the subclasses ofChartStyle
. Initializes all properties with default values.- Specified by:
addChart2
in interfaceElementContainer
- Parameters:
style
- the style of chart.xpos
- the x offset of the upper left corner in twips.ypos
- the y offset of the upper left corner in twips.objwidth
- the total width of the chart element in twips.objheight
- the total height of the chart element in twips.- Returns:
- the new Chart2.
- See Also:
Chart2
,ChartStyle
,BarStyle
,LineStyle
,AreaStyle
,Chart3DStyle
,PieStyle
,XYStyle
,StockStyle
,ContinuousStyle
,GanttStyle
,SimpleElementContainer.remove(Element)
,SimpleElementContainer.getElements()
-
addHorizontalLine
public Line addHorizontalLine(int xpos, int ypos, int objwidth)
Adds a new horizontal line to the container and returns it.- Specified by:
addHorizontalLine
in interfaceSimpleElementContainer
- Parameters:
xpos
- the horizontal offset of the start point in twips.ypos
- the vertical offset of the start point in twips.objwidth
- the width of the line in twips.- Returns:
- the created line element
-
addJavaBean
public JavaBean addJavaBean(java.lang.String className, int xpos, int ypos, int objwidth, int objheight) throws ReportException
Add a new JavaBean to the container. The class of the Java Bean need to be extends form java.awt.Component.- Specified by:
addJavaBean
in interfaceSimpleElementContainer
- Parameters:
className
- The class name of the Java Bean.xpos
- The x-coordinate of the upper left corner in twips.ypos
- The y-coordinate of the upper left corner in twips.objwidth
- The width of the new fieldElement in twips.objheight
- The height of the new fieldElement in twips.- Returns:
- The created JavaBean.
- Throws:
ReportException
- if the Java Bean cannot created.
-
addVerticalLine
public Line addVerticalLine(int xpos, int ypos, int objheight)
Adds a new vertical line to the container and returns it.- Specified by:
addVerticalLine
in interfaceSimpleElementContainer
- Parameters:
xpos
- the horizontal offset of the start point in twips.ypos
- the vertical offset of the start point in twips.objheight
- the height of the line in twips.- Returns:
- the created line element
-
addVerticalLine
public Line addVerticalLine(int xpos, int ypos, int y2, Section endSection)
Adds a new vertical line to the container and returns it.- Specified by:
addVerticalLine
in interfaceElementContainer
- Parameters:
xpos
- The horizontal offset of the start point in twips.ypos
- The vertical offset of the start point in twips.y2
- The vertical offset of the end point in end section in twips.endSection
- The section where the line should end.- Returns:
- The created line element.
-
addPicture
public Picture addPicture(int xpos, int ypos, int objwidth, int objheight, java.lang.String fileName) throws ReportException
Adds a new picture element to the container and returns it. If the width or height is -1 then the width and height from the loaded image will be used. Valid formats are GIF, JPG, PNG, BMP, WMF or EMF. Also PDF and HTML files can be added as image if the decoder is installed in the lib directory of i-net Clear Reports.- Specified by:
addPicture
in interfaceSimpleElementContainer
- Parameters:
xpos
- The horizontal offset of the start point in twips.ypos
- The vertical offset of the start point in twips.objwidth
- The width of the picture in twipsobjheight
- The height of the picture in twips.fileName
- The absolute or relative to working directory path to the image.- Returns:
- Picture The created report element.
- Throws:
ReportException
- will thrown iffile
is an unknown picture format.- See Also:
SimpleElementContainer.addPicture(int,int,int,int,java.awt.image.BufferedImage)
,SimpleElementContainer.addPicture(int,int,int,int,java.io.File)
,SimpleElementContainer.addPicture(int,int,int,int,byte[])
,SimpleElementContainer.addPicture(int, int, int, int, int[])
-
addPicture
public Picture addPicture(int xpos, int ypos, int objwidth, int objheight, java.io.File file) throws ReportException
Adds a new picture element to the container and returns it. If the width or height is -1 then the width and height from the loaded image will be used. Valid formats are GIF, JPG, PNG, BMP, WMF or EMF. Also PDF and HTML files can be added as image if the decoder is installed in the lib directory of i-net Clear Reports.- Specified by:
addPicture
in interfaceSimpleElementContainer
- Parameters:
xpos
- The horizontal offset of the start point in twips.ypos
- The vertical offset of the start point in twips.objwidth
- The width of the picture in twips.objheight
- The height of the picture in twips.file
- The file object to the image.- Returns:
- Picture The created report element.
- Throws:
ReportException
- will thrown iffile
is an unknown picture format.- See Also:
SimpleElementContainer.addPicture(int, int, int, int, BufferedImage)
,SimpleElementContainer.addPicture(int, int, int, int, String)
,SimpleElementContainer.addPicture(int, int, int, int, byte[])
,SimpleElementContainer.addPicture(int, int, int, int, int[])
-
addPicture
public Picture addPicture(int xpos, int ypos, int objwidth, int objheight, int[] buffer) throws ReportException
Adds a new picture element to the container and returns it. If the width or height is -1 then the width and height from the loaded image will be used. Valid formats are GIF, JPG, PNG, BMP, WMF or EMF. Also PDF and HTML files can be added as image if the decoder is installed in the lib directory of i-net Clear Reports.- Specified by:
addPicture
in interfaceSimpleElementContainer
- Parameters:
xpos
- The horizontal offset of the start point in twips.ypos
- The vertical offset of the start point in twips.objwidth
- The width of the picture in twips.objheight
- The height of the picture in twips.buffer
- A int[] with image header and data.- Returns:
- Picture The created report element.
- Throws:
ReportException
- ReportException will thrown ifbuffer
is an unknown picture format.- See Also:
SimpleElementContainer.addPicture(int, int, int, int, java.awt.image.BufferedImage)
,SimpleElementContainer.addPicture(int, int, int, int, String)
,SimpleElementContainer.addPicture(int, int, int, int, byte[])
,SimpleElementContainer.addPicture(int, int, int, int, File)
,SimpleElementContainer.addPicture(int,int,int,int,java.io.File)
,SimpleElementContainer.addPicture(int,int,int,int,String)
-
addPicture
public Picture addPicture(int xpos, int ypos, int objwidth, int objheight, byte[] buffer) throws ReportException
Adds a new picture element to the container and returns it. If the width or height is -1 then the width and height from the loaded image will be used. Valid formats are GIF, JPG, PNG, BMP, WMF or EMF. Also PDF and HTML files can be added as image if the decoder is installed in the lib directory of i-net Clear Reports.- Specified by:
addPicture
in interfaceSimpleElementContainer
- Parameters:
xpos
- The horizontal offset of the start point in twips.ypos
- The vertical offset of the start point in twips.objwidth
- The width of the picture in twips.objheight
- The height of the picture in twips.buffer
- A byte[] with image header and data.- Returns:
- Picture The created report element.
- Throws:
ReportException
- ReportException will thrown ifbuffer
is an unknown picture format.- See Also:
SimpleElementContainer.addPicture(int,int,int,int,java.awt.image.BufferedImage)
,SimpleElementContainer.addPicture(int, int, int, int, String)
,SimpleElementContainer.addPicture(int,int,int,int,java.io.File)
,SimpleElementContainer.addPicture(int, int, int, int, int[])
-
addPicture
public Picture addPicture(int xpos, int ypos, int objwidth, int objheight, java.awt.image.BufferedImage im) throws ReportException
Adds a new picture element to the container and returns it. If the width or height is -1 then the width and height from the loaded image will be used. Valid formats are GIF, JPG, PNG, BMP, WMF or EMF. Also PDF and HTML files can be added as image if the decoder is installed in the lib directory of i-net Clear Reports. If the width or height -1 then the width and height from the loaded image is used. The TYPE_INT_ARGB color model is supported only.- Specified by:
addPicture
in interfaceSimpleElementContainer
- Parameters:
xpos
- The horizontal offset of the start point in twips.ypos
- The vertical offset of the start point in twips.objwidth
- The width of the picture in twips.objheight
- The height of the picture in twips.im
- The image object.- Returns:
- Picture The created report element.
- Throws:
ReportException
- ReportException will thrown ifim
is an unknown picture format.- See Also:
SimpleElementContainer.addPicture(int, int, int, int, String)
,SimpleElementContainer.addPicture(int,int,int,int,java.io.File)
,SimpleElementContainer.addPicture(int,int,int,int,byte[])
,SimpleElementContainer.addPicture(int, int, int, int, int[])
-
copyContent
public void copyContent(Section source)
Copies content and properties of the source section into target section.- Parameters:
source
- The sections thats content and properties should copied.- Since:
- 6.0
-
addSubreport
public Subreport addSubreport(int xpos, int ypos, int objwidth, int objheight, java.lang.String filename) throws ReportException, java.net.MalformedURLException, java.io.FileNotFoundException
Adds a new subreport element with definition from file to the container and returns it.- Specified by:
addSubreport
in interfaceElementContainer
- Parameters:
xpos
- The x offset of the left upper corner of subreport frame.ypos
- The y offset of the left upper corner of subreport frame.objwidth
- The width of the subreport frame.objheight
- The height of the subreport frame.filename
- The file name of the subreport to insert.- Returns:
- The created subreport element. You can get the engine of the subreport with method getEngine in class Subreport.
- Throws:
ReportException
- if Engine is not initialized or finished.java.net.MalformedURLException
- Thrown to indicate that a malformed URL has occurred.java.io.FileNotFoundException
- If no file for the subreport were found.
-
addSubreport
public Subreport addSubreport(int xpos, int ypos, int objwidth, int objheight)
Adds a new subreport element to the container and returns it. Add-on is only possible if this report is a main report.- Specified by:
addSubreport
in interfaceElementContainer
- Parameters:
xpos
- The x offset of the left upper corner of subreport frame.ypos
- The y offset of the left upper corner of subreport frame.objwidth
- The width of the subreport frame.objheight
- The height of the subreport frame.- Returns:
- The created subreport element. You can get the engine of the subreport with method getEngine in class Subreport.
-
addText
public Text addText(int xpos, int ypos, int objwidth, int objheight)
Adds a new text element to the container. To fill a new line into this text element useaddParagraph
method. The returned text element is empty, that means it contains no paragraph object.- Specified by:
addText
in interfaceSimpleElementContainer
- Parameters:
xpos
- the x offset of the text elementypos
- the y offset of the text elementobjwidth
- the width of the text elementobjheight
- the height of the text element- Returns:
- the created text element.
-
addFormField
public com.inet.report.FormFieldElement addFormField(int xpos, int ypos, int objwidth, int objheight)
Adds a new form field element to the container.- Specified by:
addFormField
in interfaceElementContainer
- Parameters:
xpos
- The x offset of the left upper corner of the form field.ypos
- The y offset of the left upper corner of the form field.objwidth
- The width of the form field.objheight
- The height of the form field.- Returns:
- the created form field element.
-
addInteractiveSorting
public com.inet.report.InteractiveSorting addInteractiveSorting(Field field, int xpos, int ypos, int objwidth, int objheight)
Adds a new InteractiveSorting element to the container.- Specified by:
addInteractiveSorting
in interfaceElementContainer
- Parameters:
field
- the a group field or a sorting field which sorting should be interactive.xpos
- The x offset of the left upper corner of the form field.ypos
- The y offset of the left upper corner of the form field.objwidth
- The width of the form field.objheight
- The height of the form field.- Returns:
- the created form field element.
-
remove
public void remove(Element elem)
Removes the given report element from the container.- Specified by:
remove
in interfaceSimpleElementContainer
- Parameters:
elem
- The Report Element which should be removed from the container (null
is not permitted).
-
getSectionNameByNumber
public java.lang.String getSectionNameByNumber(int number) throws ReportException
Generates a name ending usually used for section names.- Parameters:
number
- - A number greater than 0; usually the index of the section in the sections set.- Returns:
- String - "a" for 0, "z" for 25, "ab" for 27
- Throws:
ReportException
- if number is lesser than 0- Since:
- 6.0
-
getName
public java.lang.String getName() throws ReportException
Returns the name of the section - i.e. "Db" for the second detail section.- Returns:
- The Name of the section
- Throws:
ReportException
- will thrown if Section was not found.- Since:
- 6.0
-
setSuppressIfBlank
public void setSuppressIfBlank(boolean newValue)
Sets the value of the property 'suppress if blank'. If this property is enabled the section will not printed if it is blank.- Parameters:
newValue
- The new value of the property 'suppress if blank'.- Since:
- 6.0
-
getSuppressIfBlank
public boolean getSuppressIfBlank()
Returns the value of the property 'suppress if blank'. If this property is enabled the section will not printed if it is blank.- Returns:
- The value of the property 'suppress if blank'.
- Since:
- 6.0
-
setSuppressIfBlankFormula
public void setSuppressIfBlankFormula(FormulaField newFormula)
Sets the formula for the property 'suppress if blank'. If this property is enabled the section will not printed if it is blank.- Parameters:
newFormula
- The new formula for the property 'suppress if blank'.- Since:
- 6.0
-
getSuppressIfBlankFormula
public FormulaField getSuppressIfBlankFormula()
Returns the formula for the property 'suppress if blank'. If this property is enabled the section will not printed if it is blank.- Returns:
- The formula for the property 'suppress if blank'.
- Since:
- 6.0
-
setUnderlayFollow
public void setUnderlayFollow(boolean newValue)
Sets the value of the property 'underlay follow'. If this property is enabled the section will underlay the following section(s).- Parameters:
newValue
- The new value of the property 'underlay follow'.- Since:
- 6.0
-
getUnderlayFollow
public boolean getUnderlayFollow()
Returns the value of the property 'underlay follow'. If this property is enabled the section will underlay the following section(s).- Returns:
- The value of the property 'underlay follow'.
- Since:
- 6.0
-
setUnderlayFollowFormula
public void setUnderlayFollowFormula(FormulaField newFormula)
Sets the formula for the property 'underlay follow'. If this property is enabled the section will underlay the following section(s).- Parameters:
newFormula
- The new formula for the property 'underlay follow'.- Since:
- 6.0
-
getUnderlayFollowFormula
public FormulaField getUnderlayFollowFormula()
Returns the formula for the property 'underlay follow'. If this property is enabled the section will underlay the following section(s).- Returns:
- The formula for the property 'underlay follow'.
- Since:
- 6.0
-
getReportElementsCount
public int getReportElementsCount()
Counts the number of Report Elements in this section and returns it.- Specified by:
getReportElementsCount
in interfaceSimpleElementContainer
- Returns:
- The number of report elements in this section.
- Since:
- 6.0
-
getReportElement
public Element getReportElement(int idx)
Returns a report element. You can specify the returned element with the idx parameter.- Specified by:
getReportElement
in interfaceSimpleElementContainer
- Parameters:
idx
- The 0-based index of the element, which should be returned.- Returns:
- The returned Element can be a FieldElement, a Text, a Line, a Box, a Picture, a DatabasePicture, a OldChart, Subreport or a CrossTab.
- Since:
- 6.0
- See Also:
FieldElement
,Line
,Box
,Picture
,DatabasePicture
,Chart2
,Subreport
,CrossTab
,Text
-
sortAndFilterSectionElements
public java.util.List<Element> sortAndFilterSectionElements(int accuracy, boolean write_sub, boolean makeFilteredList)
FOR INTERNAL USE ONLY Method for XLS-Export: Labels, Fields, CrossTab, Line, Box and Subreport will be sorted Elements are filtered and sorted by their positions (up-down, then left-right) XLS-Export: makeFilteredList=true, because Z-order of elements must be kept Elements with negative x-coordinate will be not proceeded because of problem with IntObjectMap- Parameters:
accuracy
- accuracy for horizontal positioningwrite_sub
- if true subreports will be rendered.makeFilteredList
- if true the list without not renderable elements will be produced.- Returns:
- filtered list (elements in original order without suppressed elements)
-
indexOf
public int indexOf()
Returns the current index of thisSection
in thisArea
.- Specified by:
indexOf
in classReportComponent
- Returns:
- The current index of this section in this area.
- Throws:
java.lang.IllegalStateException
- Thrown if this section was not found in the parent area.- Since:
- 6.0
-
setReferences
public void setReferences()
FOR INTERNAL USE ONLY- Specified by:
setReferences
in interfacecom.inet.report.ReferenceHolder
- Overrides:
setReferences
in classReportComponent
-
resetReferences
public void resetReferences()
FOR INTERNAL USE ONLY- Specified by:
resetReferences
in interfacecom.inet.report.ReferenceHolder
- Overrides:
resetReferences
in classReportComponent
- Since:
- 6.0
-
getPropertyFormulas
public java.util.List<FormulaField> getPropertyFormulas()
Returns a list with all property formulas that are set for this report element. This includes property formulas for any type of sub-component but excludes formulas for any descendantReportComponent
of this one. To get the property formulas for descendantReportComponent
useReportComponent.getSubComponents()
- Overrides:
getPropertyFormulas
in classRegion
- Returns:
- List of property formulas
- Since:
- 6.0
-
setUseColor
public void setUseColor(boolean newValue)
Sets the value of the property 'useColor'. When this property is enabled the color defined in 'background color' is used.- Parameters:
newValue
- The new value of the property 'useColor'.- Since:
- 6.1
-
getUseColor
public boolean getUseColor()
Returns the value of the property 'useColor'. When this property is enabled the color defined in 'background color' is used.- Returns:
- The current value of the property 'useColor'.
- Since:
- 6.1
-
getWidth
public int getWidth()
Returns the width of the section. As the width of a section can not vary it will returnEngine.getReportProperties().getPaperWidth()-Engine.getReportProperties().getMarginLeft()-Engine.getReportProperties().getMarginRight()
for all main reports.
Only if this section belongs to a sub report the section width will not be the width of the page because it is limited to the width of the sub report.- Overrides:
getWidth
in classReportComponent
- Returns:
- The width of this section.
- Since:
- 7.0
-
parseElement
public NodeParser parseElement(com.inet.report.parser.XMLTag group, java.lang.String tag, org.xml.sax.Attributes atts, java.util.Map<java.lang.String,java.lang.Object> parserMap) throws FatalParserException
FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY Internal method for reading report XMLParses an XML node with the given information, and returns either a sub-element which was created as a result, or null if no sub-element was created, i.e. the information was applied to the ReportComponent itself. Note that the parsing is highly tolerant, i.e. exceptions are intercepted and suppressed if at all possible.
- Specified by:
parseElement
in interfaceNodeParser
- Overrides:
parseElement
in classRegion
- Parameters:
group
- XMLTag of the current node to be parsed, or null if there is no such current group. An XMLTag is a group of nodes bundled together, usually it is a Properties node such as CommonProperties, BorderProperties, etc.tag
- The XMLTag to be parsedatts
- The set of attributes in the current XMLTagparserMap
- The map of current Parser.- Returns:
- The NodeParser sub-element if one needed to be created, or null if none was created.
- Throws:
FatalParserException
- if an exception occurs which causes the report to not be able to be read: causes the abortion of the reading of the report.
-
parseEndElement
public void parseEndElement(com.inet.report.parser.XMLTag group, java.lang.String tag, java.util.Map<java.lang.String,java.lang.Object> parserMap) throws FatalParserException
FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY Internal method for reading report XMLReceive notification of the end of an XML tag.
- Specified by:
parseEndElement
in interfaceNodeParser
- Overrides:
parseEndElement
in classReportComponent
- Parameters:
group
- XMLTag of the current node to be parsed, or null if there is no such current group.tag
- The XMLTag to be parsedparserMap
- The map of current Parser.- Throws:
FatalParserException
- if an exception occurs which causes the report to not be able to be read: causes the abortion of the reading of the report.
-
parseText
public void parseText(java.lang.String text, java.util.Map<java.lang.String,java.lang.Object> parserMap)
FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY Internal method for reading report XMLThis method is called if text was encountered in the context of this node. (Examples would be a formula's text or a text element's text)
- Specified by:
parseText
in interfaceNodeParser
- Overrides:
parseText
in classReportComponent
- Parameters:
text
- text encountered and to be storedparserMap
- The map of current Parser.
-
addSignatureForm
public SignatureForm addSignatureForm(int xpos, int ypos, int objwidth, int objheight)
Adds a newSignatureForm
element to thisSection
. This signature element is useful for PDF export, only.- Specified by:
addSignatureForm
in interfaceElementContainer
- Parameters:
xpos
- the x position of the signature form element.ypos
- the y position of the signature form element.objwidth
- the width of the signature form element.objheight
- the height of the signature form element.- Returns:
- the created signature form element.
- Throws:
java.lang.IllegalArgumentException
- if the parameters x, y, width or height are negative- Since:
- 9.1
-
copyProperties
public void copyProperties(Section source)
Some properties of the source section will be copied to this section.- Parameters:
source
- section to be copied.- Since:
- 9.1
-
copyContent
public void copyContent(SimpleElementContainer source)
Copies content and properties of the source container into this container.- Specified by:
copyContent
in interfaceElementContainer
- Parameters:
source
- The container thats content and properties should copied.
-
moveElement
public void moveElement(Element elem, SimpleElementContainer dest) throws ReportException
Moves the elementelem
from this container to the destination containerdest
.- Specified by:
moveElement
in interfaceElementContainer
- Parameters:
elem
- The element, which should move to another container.dest
- The destination container of movement.- Throws:
ReportException
- will thrown ifdest
orelem
isnull
.- See Also:
Element.setIndex(int)
-
cleanForDataExport
public int cleanForDataExport()
AllElements
that are notFieldElements
will be removed from thisSection
. All suppressed elements apart fromFormulaFields
will be removed too. All remaining elements will be sorted on their x position.- Returns:
- number of remaining elements in the section.
- Since:
- 9.2
-
getSubComponents
public java.util.List<Element> getSubComponents()
Returns allReportComponent
s that are descendants of this one. E.G. this will return all Element of aSection
. But it's as well useful forCrossTab
s orText
elements which have additional elements.- Specified by:
getSubComponents
in classReportComponent
- Returns:
- a list with all sub components which can be empty as well; will be
null
if the component has no descendants
-
-