|
ReportMill 7.0 API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.reportmill.foundation.RMObject
com.reportmill.shape.RMShape
com.reportmill.foundation.RMDocument
The RMDocument class represents a ReportMill document and is also an RMShape subclass, so it can be a real part of the document/shape hierarchy. RMDocuments are also what ReportMill refers to as templates, and is commonly used like this:
RMDocument template = RMDocument.getDoc(aSource); // Load from path String, File, byte array, etc.
RMDocument report = template.generateReport(aDataset); // Any Java dataset: EJBs, custom classes, collctns, etc.
report.writePDF("MyReport.pdf");
On rare occasions, you may also want to create a document dynamically. Here's an example:
RMDocument doc = new RMDocument(612, 792); // Standard US Letter size (8.5" x 11"), in points
RMTable table = new RMTable(); // Create new table ...
doc.getPage(0).addChild(table); // ... and add to first page
table.setBounds(36, 36, 540, 680); // Position and size table
table.getRow("Objects Details").getColumn(0).setText("Title: @getTitle@"); // Configure first text
| Nested Class Summary | |
static interface |
RMDocument.DocListener
An interface to define objects that want to get document notifications. |
| Field Summary | |
static java.util.Locale |
_locale
|
static int |
CENTIMETERS
|
static int |
INCHES
|
static int |
POINTS
|
static java.lang.String[] |
SUPPORTED_UNITS
|
| Fields inherited from class com.reportmill.shape.RMShape |
HandleMaxXMaxY, HandleMaxXMidY, HandleMaxXMinY, HandleMidXMaxY, HandleMidXMinY, HandleMinXMaxY, HandleMinXMidY, HandleMinXMinY, HandleWidth |
| Constructor Summary | |
RMDocument()
Creates a plain empty document. |
|
RMDocument(float aWidth,
float aHeight)
Creates a document with the given width and height (in printer points). |
|
RMDocument(java.lang.Object aSource)
Creates a new document from the given source. |
|
| Method Summary | |
boolean |
acceptsChildren()
Editor method. |
void |
addPage(RMPage aPage)
Adds a given page to this document (at end). |
void |
addPage(RMPage aPage,
int anIndex)
Adds a given page to this document (at the given index). |
void |
addPages(java.util.List aList)
Add the given list of pages to this document (at end). |
void |
addPages(RMDocument aDoc)
Add the pages in the given document to this document (at end) and clears the pages list in the given document. |
void |
addShapeWithPageReference(RMShape aShape)
|
void |
boundsChanged(RMShape aShape)
Notifies this shape that a given shape's bounds have changed (presumably a descendant). |
boolean |
calibrateColors()
Returns whether the document should calibrate colors in generated file formats like PDF. |
boolean |
childrenSuperSelectImmediately()
Editor method. |
java.lang.Object |
clone()
Copies basic document attributes (shallow copy only - no children or pages). |
RMShape |
cloneDeep()
Copies the complete document, including document pages and all their children. |
boolean |
compress()
Returns whether the document should compress images in generated file formats like PDF. |
void |
copy(com.reportmill.foundation.RMObject anObj)
Copies applicable attributes from the given object. |
byte[] |
csvBytes()
|
java.lang.String |
csvString()
|
byte[] |
delimitedAsciiBytes(java.lang.String fieldDelimiter,
java.lang.String recordDelimiter,
boolean quoteFields)
|
java.lang.String |
delimitedString(java.lang.String fieldDelimiter,
java.lang.String recordDelimiter,
boolean quoteFields)
|
boolean |
equals(java.lang.Object anObj)
Standard equals implementation. |
byte[] |
excelBytes()
|
byte[] |
flashBytes()
|
java.lang.Object |
fromXML(com.ribs.RXArchiver anArchiver,
com.ribs.RXElement anElement)
XML unarchival. |
RMDocument |
generateReport()
Returns a generated report from this template. |
RMDocument |
generateReport(java.lang.Object objects)
Returns a generated report from this template evaluated against the given object. |
RMDocument |
generateReport(java.lang.Object objects,
boolean paginate)
Returns a generated report from this template evaluated against the given object with an option to paginate. |
RMDocument |
generateReport(java.lang.Object objects,
java.lang.Object userInfo)
Returns a generated report from this template evaluated against the given object and userInfo. |
RMDocument |
generateReport(java.lang.Object objects,
java.lang.Object userInfo,
boolean paginate)
Returns a generated report from this template evaluated against the given object and userInfo with an option to paginate. |
com.reportmill.graphics.RMAnimator |
getAnimator(int anIndex)
|
com.reportmill.graphics.RMAnimator |
getAnimatorLast()
|
byte[] |
getBytes()
Returns the document as an XML byte array. |
byte[] |
getBytesCSV()
Returns the document as a byte array of a CSV file. |
byte[] |
getBytesDelimitedAscii(java.lang.String fieldDelimiter,
java.lang.String recordDelimiter,
boolean quoteFields)
Returns the document as a byte array of a delimited ASCII file (using given field, record separator strings). |
byte[] |
getBytesExcel()
Returns the document as byte array of an Excel file. |
byte[] |
getBytesFlash()
Returns the document as a byte array of a Flash file. |
byte[] |
getBytesHTML()
Returns the document as a byte array of an HTML file. |
byte[] |
getBytesJPEG()
Returns the document as byte array of a JPEG file. |
byte[] |
getBytesPDF()
Returns the document as a byte array of a PDF file. |
com.reportmill.foundation.RMDataSource |
getDataSource()
Returns the RMDataSource associated with this document. |
com.reportmill.foundation.RMEntity |
getDataSourceSchema()
Returns the schema for the RMDataSource associated with this document (convenience). |
static RMDocument |
getDoc(java.lang.Object aSource)
Creates a new document from aSource. |
RMDocument.DocListener |
getDocListener()
Returns the DocListener associated with this document. |
RMDocument |
getDocument()
Returns the RMDocument ancestor of this shape (or null if not there). |
java.lang.String |
getFilename()
Returns the filename associated with this document, if available. |
float |
getGridSpacing()
Returns the grid spacing for the document's grid. |
float |
getHeight()
Returns the height of the document (actually the height of its first page). |
boolean |
getLoops()
|
java.util.Map |
getMapHTML(java.lang.String anImageRoot)
Returns the document as a Map of an HTML file and image resources. |
float |
getMarginBottom()
Returns the margin rects bottom value. |
float |
getMarginLeft()
Returns the margin rects left value. |
RMRect |
getMarginRect()
Returns the margin rect for this document. |
float |
getMarginRight()
Returns the margin rects right value. |
float |
getMarginTop()
Returns the margin rects top value. |
float |
getMaxTime()
Returns the total time needed to animate this document (total of all page animators). |
java.lang.String |
getNullString()
Returns the string used to replace any occurrances of null values in a generated report. |
RMPage |
getPage(int index)
Returns the page at the given index. |
int |
getPageCount()
Returns the number of pages in this document. |
RMPage |
getPageLast()
Returns the last page (convenience). |
java.util.List |
getPages()
Returns the list of RMPages associated with this document. |
java.lang.String |
getPublishUrl()
Returns the URL this document should be uploaded to. |
RMPage |
getSelectedPage()
Returns the currently selected page of this document. |
int |
getSelectedPageIndex()
Returns the current page index of this document. |
boolean |
getShowGrid()
Returns whether the document should show an alignment grid. |
boolean |
getShowMargin()
Returns whether the document should show a margin rect. |
RMSize |
getSize()
Returns the size of the document (acutally the size of its first page). |
boolean |
getSnapGrid()
Returns whether the document should snap to an alignment grid. |
boolean |
getSnapMargin()
Returns whether the document should snap to a margin rect. |
java.lang.String |
getStringCSV()
Returns the document as a string of a CSV file. |
java.lang.String |
getStringDelimitedText(java.lang.String fieldDelimiter,
java.lang.String recordDelimiter,
boolean quoteFields)
Returns the document as a string of a delimited text file. |
com.reportmill.foundation.RMUndoer |
getUndoer()
Returns the RMUndoer for this document. |
int |
getUnit()
Returns the units used to express sizes in the current document (POINTS, INCHES, CENTIMETERS). |
java.lang.String |
getUnitString()
Returns the units used to express sizes in the current document as one of the strings: point, inch or cm. |
int |
getVersion()
Returns the version this document was loaded as. |
float |
getWidth()
Returns the width of the document (actually the width of its first page). |
int |
handleAtPoint(RMPoint point,
boolean isSuperSelected)
|
byte[] |
htmlBytes()
|
byte[] |
htmlBytes(java.lang.String aSource)
|
byte[] |
htmlBytes(java.lang.String aSource,
java.lang.String aTitle)
|
java.util.Map |
htmlMap(java.lang.String anImageRoot)
|
java.lang.String |
htmlString(java.lang.String aSource)
|
java.lang.String |
htmlString(java.lang.String aSource,
java.lang.String aTitle)
|
java.lang.Object |
initWithArchiver(com.reportmill.foundation.RMArchiver anArchiver)
Legacy archival. |
byte[] |
jpgBytes()
|
java.lang.Boolean |
paginate()
Returns whether the document should paginate generated reports by default. |
byte[] |
pdfBytes()
|
void |
removePage(int anIndex)
Removes the page at the given index from this document. |
void |
resolvePageReferences()
Performs page substitions on any text fields that were identified as containing @Page@ keys. |
RMShape |
rpgClone(com.reportmill.foundation.ReportMill rm)
Report Generation method. |
void |
setCalibrateColors(boolean aValue)
Sets whether the document should calibrate colors in generated file formats like PDF. |
void |
setCompress(boolean aValue)
Sets whether the document should compress images in generated file formats like PDF. |
void |
setDataSource(com.reportmill.foundation.RMDataSource aDataSource)
Sets the RMDataSource associated with this document. |
void |
setDocListener(RMDocument.DocListener aListener)
Sets the DocListener associated with this document. |
void |
setFilename(java.lang.String aPath)
Sets the filename associated with this document. |
void |
setGridSpacing(float aValue)
Sets the grid spacing for the document's grid. |
void |
setMarginRect(float left,
float right,
float top,
float bottom)
Sets the margin rect for this document. |
void |
setMarginRect(RMRect aValue)
Sets the margin rect for this document. |
void |
setNeedsRepaint(RMShape aShape)
This is a notification call for impending visual shape attribute changes. |
void |
setNullString(java.lang.String aValue)
Sets the string used to replace any occurrances of null values in a generated report. |
void |
setPages(java.util.List aList)
Sets the list of RMPages associated with this document. |
void |
setPageSize(float w,
float h)
Sets the size of the document while maintaining margin rect. |
void |
setPageSize(RMSize size)
Sets the size of the document while maintaining margin rect. |
void |
setPaginate(java.lang.Boolean aValue)
Sets whether the document should paginate generated reports by default. |
void |
setPublishUrl(java.lang.String aValue)
Sets the URL this document should be uploaded to. |
void |
setSelectedPage(int anIndex)
Selects the currently selected page, by index. |
void |
setShowGrid(boolean aValue)
Sets whether the document should show an alignment grid. |
void |
setShowMargin(boolean aValue)
Sets whether the document should show a margin rect. |
void |
setSize(float aWidth,
float aHeight)
Sets the size of the document (and all of its pages). |
void |
setSize(RMSize aSize)
Sets the size of the document. |
void |
setSizeDeep(float aWidth,
float aHeight)
Sets the size of the document and all of its pages (sizes children, too, using autosizing settings). |
void |
setSnapGrid(boolean aValue)
Sets whether the document should snap to an alignment grid. |
void |
setSnapMargin(boolean aValue)
Sets whether the document should snap to a margin rect. |
void |
setUndoer(com.reportmill.foundation.RMUndoer anUndoer)
Sets the RMUndoer for this document. |
void |
setUnit(int aValue)
Sets the units used to express sizes in the current document (POINTS, INCHES, CENTIMETERS). |
void |
setUnitString(java.lang.String aValue)
Sets the units used to express sizes in the current document with one of the strings: point, inch or cm. |
boolean |
superSelectable()
Editor method. |
com.ribs.RXElement |
toXML(com.ribs.RXArchiver anArchiver)
XML archival. |
com.reportmill.foundation.RMObject |
undoClone()
Undo support. |
void |
undoerAddDirtyObject(com.reportmill.foundation.RMObject anObj)
Overrides RMShape implementation to actually add dirty object to notify doc listner and actually add to undoer. |
float |
unitsFromPoints(float aValue)
Converts given value to document units from printer points (1/72 of an inch). |
float |
unitsMultiplier()
Returns the multiplier used to convert printer points to document units. |
float |
unitsToPoints(float aValue)
Converts given value from document units to printer points (1/72 of an inch). |
void |
willChange(RMShape aShape)
This is a notification call-back for impeding shape attribute changes. |
void |
write(java.lang.String aPath)
Writes the document out to the given path String (it extracts type from path extension). |
void |
writeCSV(java.lang.String fname)
Writes the document to the given path String as a CSV file. |
void |
writeDelimitedAscii(java.lang.String fname,
java.lang.String fieldDelimiter,
java.lang.String recordDelimiter,
boolean quoteFields)
Writes the document to the given path String as a delimited ASCII file. |
void |
writeExcel(java.lang.String fname)
Writes the document to the given path String as an Excel file. |
void |
writeFlash(java.lang.String fname)
Writes the document to the given path String as Flash. |
void |
writeFlashHTML(java.lang.String fname)
Writes the document to the given path String as Flash/HTML. |
java.util.Map |
writeHTML(java.lang.String fname)
Writes the document to the given path String as HTML. |
java.util.Map |
writeHTML(java.lang.String fname,
java.lang.String anImageRoot)
Writes the document to the given path String as HTML (referenced images are written at the given relative path). |
void |
writeJPG(java.lang.String fname)
Writes the document to the given path String as a JPEG file. |
void |
writePDF(java.lang.String fname)
Writes the document to the given path String as PDF. |
| Methods inherited from class com.reportmill.foundation.RMObject |
archiverClassName, didUndo, getAnimAttribute, getClassNameShort |
| Methods inherited from class java.lang.Object |
getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
public static final int INCHES
public static final int POINTS
public static final int CENTIMETERS
public static final java.lang.String[] SUPPORTED_UNITS
public static java.util.Locale _locale
| Constructor Detail |
public RMDocument()
public RMDocument(float aWidth,
float aHeight)
public RMDocument(java.lang.Object aSource)
| Method Detail |
public static RMDocument getDoc(java.lang.Object aSource)
public java.lang.String getFilename()
public void setFilename(java.lang.String aPath)
public int getPageCount()
getPageCount in class RMShapepublic RMPage getPage(int index)
public RMPage getPageLast()
public java.util.List getPages()
public void setPages(java.util.List aList)
public void addPage(RMPage aPage)
public void addPage(RMPage aPage,
int anIndex)
public void removePage(int anIndex)
public void addPages(java.util.List aList)
public void addPages(RMDocument aDoc)
public int getSelectedPageIndex()
public RMPage getSelectedPage()
public void setSelectedPage(int anIndex)
public com.reportmill.foundation.RMDataSource getDataSource()
public void setDataSource(com.reportmill.foundation.RMDataSource aDataSource)
public com.reportmill.foundation.RMEntity getDataSourceSchema()
public int getUnit()
public void setUnit(int aValue)
public java.lang.String getUnitString()
public void setUnitString(java.lang.String aValue)
public boolean getShowGrid()
public void setShowGrid(boolean aValue)
public boolean getSnapGrid()
public void setSnapGrid(boolean aValue)
public boolean getShowMargin()
public void setShowMargin(boolean aValue)
public boolean getSnapMargin()
public void setSnapMargin(boolean aValue)
public RMRect getMarginRect()
public void setMarginRect(RMRect aValue)
public void setMarginRect(float left,
float right,
float top,
float bottom)
public float getMarginLeft()
public float getMarginRight()
public float getMarginTop()
public float getMarginBottom()
public float getGridSpacing()
public void setGridSpacing(float aValue)
public java.lang.String getPublishUrl()
public void setPublishUrl(java.lang.String aValue)
public java.lang.String getNullString()
public void setNullString(java.lang.String aValue)
public java.lang.Boolean paginate()
public void setPaginate(java.lang.Boolean aValue)
public boolean compress()
public void setCompress(boolean aValue)
public boolean calibrateColors()
public void setCalibrateColors(boolean aValue)
public int getVersion()
public RMDocument.DocListener getDocListener()
public void setDocListener(RMDocument.DocListener aListener)
public RMDocument generateReport()
public RMDocument generateReport(java.lang.Object objects)
public RMDocument generateReport(java.lang.Object objects,
java.lang.Object userInfo)
public RMDocument generateReport(java.lang.Object objects,
boolean paginate)
public RMDocument generateReport(java.lang.Object objects,
java.lang.Object userInfo,
boolean paginate)
public byte[] getBytes()
public byte[] getBytesPDF()
public byte[] getBytesHTML()
public byte[] getBytesFlash()
public byte[] getBytesCSV()
public byte[] getBytesDelimitedAscii(java.lang.String fieldDelimiter,
java.lang.String recordDelimiter,
boolean quoteFields)
public byte[] getBytesExcel()
public byte[] getBytesJPEG()
public java.util.Map getMapHTML(java.lang.String anImageRoot)
public java.lang.String getStringCSV()
public java.lang.String getStringDelimitedText(java.lang.String fieldDelimiter,
java.lang.String recordDelimiter,
boolean quoteFields)
public void write(java.lang.String aPath)
public void writePDF(java.lang.String fname)
public java.util.Map writeHTML(java.lang.String fname)
public java.util.Map writeHTML(java.lang.String fname,
java.lang.String anImageRoot)
public void writeFlash(java.lang.String fname)
public void writeFlashHTML(java.lang.String fname)
public void writeCSV(java.lang.String fname)
public void writeDelimitedAscii(java.lang.String fname,
java.lang.String fieldDelimiter,
java.lang.String recordDelimiter,
boolean quoteFields)
public void writeExcel(java.lang.String fname)
public void writeJPG(java.lang.String fname)
public float unitsToPoints(float aValue)
public float unitsFromPoints(float aValue)
public float unitsMultiplier()
public float getWidth()
getWidth in class RMShapepublic float getHeight()
getHeight in class RMShapepublic RMSize getSize()
getSize in class RMShapepublic void setSize(RMSize aSize)
setSize in class RMShape
public void setSize(float aWidth,
float aHeight)
setSize in class RMShape
public void setSizeDeep(float aWidth,
float aHeight)
setSizeDeep in class RMShapepublic void setPageSize(RMSize size)
public void setPageSize(float w,
float h)
public float getMaxTime()
public RMDocument getDocument()
RMShape
getDocument in class RMShapepublic com.reportmill.graphics.RMAnimator getAnimator(int anIndex)
public com.reportmill.graphics.RMAnimator getAnimatorLast()
public boolean getLoops()
public com.reportmill.foundation.RMUndoer getUndoer()
getUndoer in class RMShapepublic void setUndoer(com.reportmill.foundation.RMUndoer anUndoer)
public void undoerAddDirtyObject(com.reportmill.foundation.RMObject anObj)
undoerAddDirtyObject in class RMShapepublic void willChange(RMShape aShape)
willChange in class RMShapepublic void setNeedsRepaint(RMShape aShape)
setNeedsRepaint in class RMShapepublic void boundsChanged(RMShape aShape)
boundsChanged in class RMShapepublic void resolvePageReferences()
public void addShapeWithPageReference(RMShape aShape)
public boolean equals(java.lang.Object anObj)
equals in class RMShapepublic java.lang.Object clone()
clone in class RMShapepublic RMShape cloneDeep()
cloneDeep in class RMShapepublic com.reportmill.foundation.RMObject undoClone()
RMShape
undoClone in class RMShapepublic void copy(com.reportmill.foundation.RMObject anObj)
RMShape
copy in class RMShapepublic java.lang.Object initWithArchiver(com.reportmill.foundation.RMArchiver anArchiver)
initWithArchiver in interface com.reportmill.foundation.RMArchiver.ArchivinginitWithArchiver in class RMShapepublic com.ribs.RXElement toXML(com.ribs.RXArchiver anArchiver)
toXML in class RMShape
public java.lang.Object fromXML(com.ribs.RXArchiver anArchiver,
com.ribs.RXElement anElement)
fromXML in class RMShapepublic RMShape rpgClone(com.reportmill.foundation.ReportMill rm)
rpgClone in class RMShapepublic boolean superSelectable()
RMShape
superSelectable in class RMShapepublic boolean childrenSuperSelectImmediately()
RMShape
childrenSuperSelectImmediately in class RMShapepublic boolean acceptsChildren()
RMShape
acceptsChildren in class RMShape
public int handleAtPoint(RMPoint point,
boolean isSuperSelected)
handleAtPoint in class RMShapepublic byte[] pdfBytes()
public byte[] htmlBytes()
public byte[] flashBytes()
public byte[] csvBytes()
public byte[] delimitedAsciiBytes(java.lang.String fieldDelimiter,
java.lang.String recordDelimiter,
boolean quoteFields)
public byte[] excelBytes()
public byte[] jpgBytes()
public java.util.Map htmlMap(java.lang.String anImageRoot)
public java.lang.String csvString()
public java.lang.String delimitedString(java.lang.String fieldDelimiter,
java.lang.String recordDelimiter,
boolean quoteFields)
public byte[] htmlBytes(java.lang.String aSource)
public byte[] htmlBytes(java.lang.String aSource,
java.lang.String aTitle)
public java.lang.String htmlString(java.lang.String aSource)
public java.lang.String htmlString(java.lang.String aSource,
java.lang.String aTitle)
|
ReportMill 7.0 API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||