com.crystaldecisions.sdk.occa.report.definition
Class SubreportObject

java.lang.Object
  extended by com.crystaldecisions.sdk.occa.report.definition.ReportObject
      extended by com.crystaldecisions.sdk.occa.report.definition.SubreportObject
All Implemented Interfaces:
IReportObject, ISubreportObject, IClone

public class SubreportObject
extends ReportObject
implements ISubreportObject, IClone

This object represents a subreport placed in a report. A subreport is a free-standing or linked report found within the main report. This object provides properties for retrieving information on the subreport (for example, name, formatting options, and so on). This object is identical to the ReportObject object except that it also contains the name of the subreport.

The SubreportController object and the ISubreportClientDocument object are defined in the com.crystaldecisions.sdk.occa.report.application package. Use the SubreportController object to import a report as a subreport and to add or remove subreport links. In addition, this object can be used to retrieve the names of all of the subreports in a report. Then use the subreport name to access the associated SubreportClientDocument object, which provides access to the various controllers that are necessary to modify a subreport. You can also use the subreport name to get a list of tables in the subreport, or to set a table's database to a different location.


Constructor Summary
SubreportObject()
           
SubreportObject(ISubreportObject src)
           
 
Method Summary
 java.lang.Object clone(boolean deepClone)
           
 void copyTo(java.lang.Object destObject, boolean deepCopy)
           
 java.lang.Object createMember(java.lang.String eleName, org.xml.sax.Attributes attrs, XMLSerializationContext ctxt, java.util.Map objState, boolean[] bLoaded)
          For internal use only.
 void endElement(java.lang.String eleName, java.util.Map objState)
          For internal use only.
 void enumerateMembers(IMemberVisitor visitor)
           
 boolean getEnableOnDemand()
          Returns whether the subreport is on-demand.
 IFontColor getFontColor()
           
 java.lang.String getOnDemandCaption()
           
 java.lang.String getPreviewTabCaption()
           
 SubreportLinks getSubreportLinks()
           Returns the SubreportLinks object, which contains the links between the main report fields and the subreport fields.
 java.lang.String getSubreportName()
          Returns the subreport name.
 SubreportObjectConditionFormulas getSubreportObjectConditionFormulas()
           
 boolean getSuppressBlankSubreport()
           
 boolean hasContent(java.lang.Object srcSubreportObject)
           
 void readElement(java.lang.String eleName, java.lang.String sVal, org.xml.sax.Attributes attrs, java.util.Map objState)
          For internal use only.
 void save(XMLWriter writer, java.lang.String sTag, XMLSerializationContext ctxt)
          For internal use only.
 void save(XMLWriter writer, XMLSerializationContext ctxt)
          For internal use only.
 void saveContents(XMLWriter writer, XMLSerializationContext ctxt)
          For internal use only.
 void setEnableOnDemand(boolean enableOnDemand)
          Sets whether the subreport is on-demand.
 void setFontColor(IFontColor fontColor)
           
 void setOnDemandCaption(java.lang.String caption)
           
 void setPreviewTabCaption(java.lang.String caption)
           
 void setSubreportLinks(SubreportLinks subreportLinks)
           Sets the SubreportLinks object, which contains the links between the main report fields and the subreport fields.
 void setSubreportName(java.lang.String subreportName)
          Sets the subreport name.
 void setSubreportObjectConditionFormulas(SubreportObjectConditionFormulas conditionFormulas)
           
 void setSuppressBlankSubreport(boolean suppressBlankSubreport)
           
 void startElement(java.lang.String eleName, java.util.Map objState, org.xml.sax.Attributes attrs)
          For internal use only.
 
Methods inherited from class com.crystaldecisions.sdk.occa.report.definition.ReportObject
doControllerModification, getBorder, getBorderMargins, getControllableMixin, getFormat, getHeight, getKind, getLeft, getLinkedURI, getName, getReplacementConditionFormulas, getReportPartBookmark, getSectionCode, getSectionName, getTop, getVersion, getWidth, isDirectlyControllable, setBorder, setFormat, setHeight, setKind, setLeft, setLinkedURI, setName, setReplacementConditionFormulas, setReportPartBookmark, setSectionCode, setSectionName, setTop, setVersion, setWidth
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.crystaldecisions.sdk.occa.report.definition.IReportObject
getBorder, getBorderMargins, getFormat, getHeight, getKind, getLeft, getLinkedURI, getName, getReplacementConditionFormulas, getReportPartBookmark, getSectionCode, getSectionName, getTop, getWidth, setBorder, setFormat, setHeight, setLeft, setLinkedURI, setName, setReplacementConditionFormulas, setReportPartBookmark, setSectionCode, setSectionName, setTop, setWidth
 

Constructor Detail

SubreportObject

public SubreportObject(ISubreportObject src)

SubreportObject

public SubreportObject()
Method Detail

clone

public java.lang.Object clone(boolean deepClone)
Overrides:
clone in class ReportObject

copyTo

public void copyTo(java.lang.Object destObject,
                   boolean deepCopy)
Overrides:
copyTo in class ReportObject

createMember

public java.lang.Object createMember(java.lang.String eleName,
                                     org.xml.sax.Attributes attrs,
                                     XMLSerializationContext ctxt,
                                     java.util.Map objState,
                                     boolean[] bLoaded)
Description copied from class: ReportObject

For internal use only.

Overrides:
createMember in class ReportObject

endElement

public void endElement(java.lang.String eleName,
                       java.util.Map objState)
Description copied from class: ReportObject

For internal use only.

Overrides:
endElement in class ReportObject

getEnableOnDemand

public boolean getEnableOnDemand()
Description copied from interface: ISubreportObject

Returns whether the subreport is on-demand. On-demand subreports appear only as hyperlinks in the main report. The actual data is not read from the database until the user drills down on the hyperlink. Only data for the on-demand subreport that is actually viewed will be retrieved from the database. On-demand subreports may also be called "real time" subreports in some cases.

Specified by:
getEnableOnDemand in interface ISubreportObject
Returns:
true if the subreport is on-demand, and otherwise false.

getSubreportLinks

public SubreportLinks getSubreportLinks()

Returns the SubreportLinks object, which contains the links between the main report fields and the subreport fields.

Returns:
An SubreportLinks object, which contains the links between the main report fields and the subreport fields..

getSubreportName

public java.lang.String getSubreportName()
Description copied from interface: ISubreportObject

Returns the subreport name.

Specified by:
getSubreportName in interface ISubreportObject
Returns:
The name of the subreport as a String.

hasContent

public boolean hasContent(java.lang.Object srcSubreportObject)
Overrides:
hasContent in class ReportObject

readElement

public void readElement(java.lang.String eleName,
                        java.lang.String sVal,
                        org.xml.sax.Attributes attrs,
                        java.util.Map objState)
Description copied from class: ReportObject

For internal use only.

Overrides:
readElement in class ReportObject

save

public void save(XMLWriter writer,
                 XMLSerializationContext ctxt)
          throws java.io.IOException
Description copied from class: ReportObject

For internal use only.

Overrides:
save in class ReportObject
Throws:
java.io.IOException

save

public void save(XMLWriter writer,
                 java.lang.String sTag,
                 XMLSerializationContext ctxt)
          throws java.io.IOException
Description copied from class: ReportObject

For internal use only.

Overrides:
save in class ReportObject
Throws:
java.io.IOException

saveContents

public void saveContents(XMLWriter writer,
                         XMLSerializationContext ctxt)
                  throws java.io.IOException
Description copied from class: ReportObject

For internal use only.

Overrides:
saveContents in class ReportObject
Throws:
java.io.IOException

setEnableOnDemand

public void setEnableOnDemand(boolean enableOnDemand)
Description copied from interface: ISubreportObject

Sets whether the subreport is on-demand. On-demand subreports appear only as hyperlinks in the main report. The actual data is not read from the database until the user drills down on the hyperlink. Only data for the on-demand subreport that is actually viewed will be retrieved from the database. On-demand subreports may also be called "real time" subreports in some cases.

Specified by:
setEnableOnDemand in interface ISubreportObject
Parameters:
enableOnDemand - true if the subreport is on-demand, and otherwise false.

setSubreportLinks

public void setSubreportLinks(SubreportLinks subreportLinks)

Sets the SubreportLinks object, which contains the links between the main report fields and the subreport fields.

Parameters:
subreportLinks - The SubreportLinks object, which contains the links between the main report fields and the subreport fields.

setSubreportName

public void setSubreportName(java.lang.String subreportName)
Description copied from interface: ISubreportObject

Sets the subreport name.

Specified by:
setSubreportName in interface ISubreportObject
Parameters:
subreportName - The name of the subreport as a String.

startElement

public void startElement(java.lang.String eleName,
                         java.util.Map objState,
                         org.xml.sax.Attributes attrs)
Description copied from class: ReportObject

For internal use only.

Overrides:
startElement in class ReportObject

getSuppressBlankSubreport

public boolean getSuppressBlankSubreport()
Specified by:
getSuppressBlankSubreport in interface ISubreportObject

setSuppressBlankSubreport

public void setSuppressBlankSubreport(boolean suppressBlankSubreport)
Specified by:
setSuppressBlankSubreport in interface ISubreportObject

getFontColor

public IFontColor getFontColor()
Specified by:
getFontColor in interface ISubreportObject

setFontColor

public void setFontColor(IFontColor fontColor)
Specified by:
setFontColor in interface ISubreportObject

getSubreportObjectConditionFormulas

public SubreportObjectConditionFormulas getSubreportObjectConditionFormulas()
Specified by:
getSubreportObjectConditionFormulas in interface ISubreportObject

setSubreportObjectConditionFormulas

public void setSubreportObjectConditionFormulas(SubreportObjectConditionFormulas conditionFormulas)
Specified by:
setSubreportObjectConditionFormulas in interface ISubreportObject

getOnDemandCaption

public java.lang.String getOnDemandCaption()
Specified by:
getOnDemandCaption in interface ISubreportObject

getPreviewTabCaption

public java.lang.String getPreviewTabCaption()
Specified by:
getPreviewTabCaption in interface ISubreportObject

setOnDemandCaption

public void setOnDemandCaption(java.lang.String caption)
Specified by:
setOnDemandCaption in interface ISubreportObject

setPreviewTabCaption

public void setPreviewTabCaption(java.lang.String caption)
Specified by:
setPreviewTabCaption in interface ISubreportObject

enumerateMembers

public void enumerateMembers(IMemberVisitor visitor)
Overrides:
enumerateMembers in class ReportObject