com.crystaldecisions.sdk.occa.report.data
Class Group

java.lang.Object
  extended by com.crystaldecisions.sdk.occa.report.data.Group
All Implemented Interfaces:
IGroup, IClone

public class Group
extends java.lang.Object
implements IGroup, IClone

This object defines a group in the report. The Group object stores information on how data is grouped in the report and which options are set for the group. The options that control how data is grouped depend on the type of field that is used in the grouping.

Use the IGroup interface to manipulate this object.

Use the GroupController.canGroupOn(IField field) method to determine if a particular field can be used to group data.

See Also:
IGroup

Constructor Summary
Group()
           
Group(IGroup 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 doControllerModification(java.lang.Object newObject)
           
 void endElement(java.lang.String eleName, java.util.Map objState)
          For internal use only.
 void enumerateMembers(IMemberVisitor visitor)
           
 IField getConditionField()
           Returns which field is being used to group the data.
 ControllableMixin getControllableMixin()
           
 int getGroupIndex()
          For internal use only.
 IGroupOptions getOptions()
           Indicates how the group behaves.
 ISort getSort()
          Gets the group sorting.
 boolean hasContent(java.lang.Object srcGroup)
           
 boolean isDirectlyControllable()
           
 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 setConditionField(IField conditionField)
           Sets which field is being used to group the data.
 void setGroupIndex(int index)
          For internal use only.
 void setOptions(IGroupOptions options)
           Indicates how the group behaves.
 void setSort(ISort sort)
          Sets the group sorting.
 void startElement(java.lang.String eleName, java.util.Map objState, org.xml.sax.Attributes attrs)
          For internal use only.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Group

public Group(IGroup src)

Group

public Group()
Method Detail

clone

public java.lang.Object clone(boolean deepClone)

copyTo

public void copyTo(java.lang.Object destObject,
                   boolean deepCopy)

createMember

public 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.


endElement

public void endElement(java.lang.String eleName,
                       java.util.Map objState)

For internal use only.


getConditionField

public IField getConditionField()
Description copied from interface: IGroup

Returns which field is being used to group the data.

The only fields that may be used to group data are:

The following are defined as primitive types:

Use the GroupController.canGroupOn(IField) method to determine if a particular field can be used to group data.

Specified by:
getConditionField in interface IGroup
Returns:
The field that is being used to group the data as an IField interface.

getSort

public ISort getSort()
Description copied from interface: IGroup
Gets the group sorting.

Specified by:
getSort in interface IGroup
Returns:
an ISort object
See Also:
GroupSortController

getOptions

public IGroupOptions getOptions()
Description copied from interface: IGroup

Indicates how the group behaves. Depending on the grouping options required, the Options property will be one of the following

Group Options Object Type
Normal group No options
Specified grouping SpecifiedGroupOptions Object
Grouping based on date DateGroupOptions Object

Specified by:
getOptions in interface IGroup
Returns:
The IGroupOptions interface.

getGroupIndex

public int getGroupIndex()
Description copied from interface: IGroup
For internal use only.

Specified by:
getGroupIndex in interface IGroup

setGroupIndex

public void setGroupIndex(int index)
Description copied from interface: IGroup
For internal use only.

Specified by:
setGroupIndex in interface IGroup

hasContent

public boolean hasContent(java.lang.Object srcGroup)

readElement

public void readElement(java.lang.String eleName,
                        java.lang.String sVal,
                        org.xml.sax.Attributes attrs,
                        java.util.Map objState)

For internal use only.


save

public void save(XMLWriter writer,
                 XMLSerializationContext ctxt)
          throws java.io.IOException

For internal use only.

Throws:
java.io.IOException

save

public void save(XMLWriter writer,
                 java.lang.String sTag,
                 XMLSerializationContext ctxt)
          throws java.io.IOException

For internal use only.

Throws:
java.io.IOException

saveContents

public void saveContents(XMLWriter writer,
                         XMLSerializationContext ctxt)
                  throws java.io.IOException

For internal use only.

Throws:
java.io.IOException

setConditionField

public void setConditionField(IField conditionField)
Description copied from interface: IGroup

Sets which field is being used to group the data.

The only fields that may be used to group data are:

The following are defined as primitive types:

Use the GroupController.canGroupOn(IField) method to determine if a particular field can be used to group data.

Specified by:
setConditionField in interface IGroup
Parameters:
conditionField - The field that is being used to group the data as an IField interface.

setSort

public void setSort(ISort sort)
Description copied from interface: IGroup
Sets the group sorting.

Specified by:
setSort in interface IGroup
Parameters:
sort - an ISort object
See Also:
GroupSortController

setOptions

public void setOptions(IGroupOptions options)
Description copied from interface: IGroup

Indicates how the group behaves. Depending on the grouping options required, the Options property will be one of the following

Group Options Object Type
Normal group No options
Specified grouping SpecifiedGroupOptions Object
Grouping based on date DateGroupOptions Object

Specified by:
setOptions in interface IGroup
Parameters:
options - The IGroupOptions interface.

startElement

public void startElement(java.lang.String eleName,
                         java.util.Map objState,
                         org.xml.sax.Attributes attrs)

For internal use only.


getControllableMixin

public ControllableMixin getControllableMixin()

doControllerModification

public void doControllerModification(java.lang.Object newObject)
                              throws ReportSDKException
Throws:
ReportSDKException

isDirectlyControllable

public boolean isDirectlyControllable()

enumerateMembers

public void enumerateMembers(IMemberVisitor visitor)