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
 void addSort(int index, ISort newSort)
          For internal use only
 void cleanSummarySorts()
          For internal use only
 java.lang.Object clone(boolean deepClone)
           
 void copyTo(java.lang.Object destObject, boolean deepCopy)
           
 void copyTo(java.lang.Object destObject, boolean deepCopy, AncestorLink groupAncestor)
          For internal use only
 java.lang.Object createMember(java.lang.String eleName, org.xml.sax.Attributes attrs, XMLSerializationContext ctxt, java.util.Map objState, boolean[] bLoaded)
           
 void endElement(java.lang.String eleName, java.util.Map objState)
           
 IField getConditionField()
           Returns which field is being used to group the data.
 ISort getConditionFieldSort()
          For internal use only
 java.lang.String getGroupIdentifier()
          For internal use only
 int getGroupIndex()
          For internal use only.
 IGroupOptions getOptions()
           Indicates how the group behaves.
 int getPrimaryInteractiveSortIndex()
          For internal use only
 ISort getSort()
          Gets the group primary sorting.
 ISort getSortBySortFieldName(java.lang.String sortFieldName)
          For internal use only
 int getSortIndexBySortField(IField sortField)
          For internal use only
 Sorts getSorts()
          For internal use only
 boolean hasContent(java.lang.Object srcGroup)
           
 boolean isValidSort(ISort newSort, int index, boolean bAdd)
          For internal use only
 void readElement(java.lang.String eleName, java.lang.String sVal, org.xml.sax.Attributes attrs, java.util.Map objState)
           
 void removeSummarySort(ISort summarySort)
          For internal use only
 void removeSummarySortAt(int index)
          For internal use only
 void save(XMLWriter writer, java.lang.String sTag, XMLSerializationContext ctxt)
           
 void save(XMLWriter writer, XMLSerializationContext ctxt)
           
 void saveContents(XMLWriter writer, XMLSerializationContext ctxt)
           
 void setConditionField(IField conditionField)
           Sets which field is being used to group the data.
 void setGroupIdentifier(java.lang.String newIdentifier)
          For internal use only
 void setGroupIndex(int index)
          For internal use only.
 void setOptions(IGroupOptions options)
           Indicates how the group behaves.
 void setSort(int index, ISort newSort)
          For internal use only
 void setSort(ISort sort)
          This method is to set primary sort in the group
 void setSorts(Sorts newSorts)
          For internal use only
 void startElement(java.lang.String eleName, java.util.Map objState, org.xml.sax.Attributes attrs)
           
 
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)

copyTo

public void copyTo(java.lang.Object destObject,
                   boolean deepCopy,
                   AncestorLink groupAncestor)
For internal use only


createMember

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

endElement

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

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 primary sorting.

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

getConditionFieldSort

public ISort getConditionFieldSort()
Description copied from interface: IGroup
For internal use only

Specified by:
getConditionFieldSort in interface IGroup

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)

save

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

save

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

saveContents

public void saveContents(XMLWriter writer,
                         XMLSerializationContext ctxt)
                  throws java.io.IOException
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)
This method is to set primary sort in the group

Specified by:
setSort in interface IGroup
Parameters:
sort - new sort to set as primary sort
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)

getGroupIdentifier

public java.lang.String getGroupIdentifier()
Description copied from interface: IGroup
For internal use only

Specified by:
getGroupIdentifier in interface IGroup

setGroupIdentifier

public void setGroupIdentifier(java.lang.String newIdentifier)
Description copied from interface: IGroup
For internal use only

Specified by:
setGroupIdentifier in interface IGroup

getSorts

public Sorts getSorts()
Description copied from interface: IGroup
For internal use only

Specified by:
getSorts in interface IGroup

setSorts

public void setSorts(Sorts newSorts)
Description copied from interface: IGroup
For internal use only

Specified by:
setSorts in interface IGroup

addSort

public void addSort(int index,
                    ISort newSort)
Description copied from interface: IGroup
For internal use only

Specified by:
addSort in interface IGroup

setSort

public void setSort(int index,
                    ISort newSort)
Description copied from interface: IGroup
For internal use only

Specified by:
setSort in interface IGroup

getSortIndexBySortField

public int getSortIndexBySortField(IField sortField)
Description copied from interface: IGroup
For internal use only

Specified by:
getSortIndexBySortField in interface IGroup

removeSummarySortAt

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

Specified by:
removeSummarySortAt in interface IGroup

removeSummarySort

public void removeSummarySort(ISort summarySort)
Description copied from interface: IGroup
For internal use only

Specified by:
removeSummarySort in interface IGroup

getSortBySortFieldName

public ISort getSortBySortFieldName(java.lang.String sortFieldName)
Description copied from interface: IGroup
For internal use only

Specified by:
getSortBySortFieldName in interface IGroup

isValidSort

public boolean isValidSort(ISort newSort,
                           int index,
                           boolean bAdd)
Description copied from interface: IGroup
For internal use only

Specified by:
isValidSort in interface IGroup
Parameters:
newSort - sort to be added or set
index - the index to add / set sort
bAdd - true: add, false: set

cleanSummarySorts

public void cleanSummarySorts()
For internal use only

Specified by:
cleanSummarySorts in interface IGroup

getPrimaryInteractiveSortIndex

public int getPrimaryInteractiveSortIndex()
For internal use only

Specified by:
getPrimaryInteractiveSortIndex in interface IGroup