Class GroupField

java.lang.Object
com.inet.report.Field
com.inet.report.GroupField
All Implemented Interfaces:
NodeParser, com.inet.report.ReferencedObject, com.inet.report.ReferenceHolder, Validatable, Serializable

public class GroupField extends Field implements com.inet.report.ReferenceHolder, Validatable
The GroupField represents a group name field, which is automatically created with the creation of a Group object. When evaluating a GroupField the name of the group will returned. So if you have a group then you can print out the name with a FieldElement containing the GroupField.
You can get the GroupField of each group with Fields.getGroupNameField(int) in class Fields.

This class is part of the RDC.
See Also:
  • Method Details

    • setName

      public void setName(String name) throws ReportException
      Setting the name of a GroupField is not allowed. If you want to customize the name of the GroupField use:
      • GroupField.getGroup().setCustomizeGroupNameField(CUSTOMIZE_GROUP_NAME_FIELD_ENABLED)
        and GroupField.getGroup().setGroupNameDbField(<your field>)
      • or use GroupField.getGroup().setCustomizeGroupNameField(CUSTOMIZE_GROUP_NAME_FIELD_ENABLED_WITH_FM)
        and GroupField.getGroup().setGroupNameFormula(<your field>).
      Otherwise an exception will be thrown.
      Specified by:
      setName in class Field
      Parameters:
      name - a name.
      Throws:
      ReportException - will be thrown when you use this method to set the name of a GroupField.
      Since:
      6.0
      See Also:
    • getGroup

      public Group getGroup()
      Returns the group this field is associated with.
      Overrides:
      getGroup in class Field
      Returns:
      the group this field belongs to.
      Since:
      6.0
      See Also:
    • getGroupType

      public int getGroupType()
      Returns the type of the group, which is associated with this group name field. The following values possible:
      • 0 - field results from a standard group definition
      • 1 - field results from group definition of a cross-tab column
      • 2 - field results from group definition of a cross-tab row
      • 3 - field results from group definition of a chart
      That means this group name field is associated with a standard group if the type is 0. In this case eng.getGroup(getGroupNumber()+1) results the Group object which is associated with this field. Otherwise a null is returned by getGroup.
      Returns:
      the group type.
      Since:
      6.0
    • getField

      public Field getField()
      Gets the field definition element (for example, database field element, prompt field element).
      Overrides:
      getField in class Field
      Returns:
      Field The current value of the 'field' property.
    • setField

      public void setField(Field newField)
      Sets the field definition element (for example, DatabaseField element, prompt field element).
      Overrides:
      setField in class Field
      Parameters:
      newField - The new field element of the property 'field'.
    • saveFieldXML2

      protected void saveFieldXML2(PrintWriter pw, int depth)
      FOR INTERNAL USE ONLY
      Specified by:
      saveFieldXML2 in class Field
      Parameters:
      pw - the print writer
      depth - the current depth
    • getValueType

      public int getValueType()
      The return value type of a GroupField is always Field.String, but for formatting the return value type of the group the field is based on is needed.
      Overrides:
      getValueType in class Field
      Returns:
      The value of the property 'value type'.
      Since:
      6.0
      See Also:
    • getName

      public String getName()
      Returns a string which represents the name of the group field. The string returned depends on the settings of Group.getCustomizeGroupNameField().
      Overrides:
      getName in class Field
      Returns:
      name of the groupfield
      Since:
      6.0
      See Also:
    • addReferencedObject

      public final void addReferencedObject(com.inet.report.ReferencedObject reference)
      FOR INTERNAL USE ONLY
      Specified by:
      addReferencedObject in interface com.inet.report.ReferenceHolder
      Since:
      6.0
    • getReferencedObjects

      public final com.inet.report.ReferencedObject[] getReferencedObjects()
      FOR INTERNAL USE ONLY
      Specified by:
      getReferencedObjects in interface com.inet.report.ReferenceHolder
    • getRealReferencedObjectCount

      public final int getRealReferencedObjectCount()
      FOR INTERNAL USE ONLY
      Specified by:
      getRealReferencedObjectCount in interface com.inet.report.ReferenceHolder
      Since:
      6.0
    • getReferencedObjectCount

      public final int getReferencedObjectCount()
      FOR INTERNAL USE ONLY
      Specified by:
      getReferencedObjectCount in interface com.inet.report.ReferenceHolder
    • removeReferencedObject

      public final void removeReferencedObject(com.inet.report.ReferencedObject reference)
      FOR INTERNAL USE ONLY
      Specified by:
      removeReferencedObject in interface com.inet.report.ReferenceHolder
      Since:
      6.0
    • resetReferences

      public final void resetReferences()
      FOR INTERNAL USE ONLY
      Specified by:
      resetReferences in interface com.inet.report.ReferenceHolder
    • setReferences

      public final void setReferences()
      FOR INTERNAL USE ONLY
      Specified by:
      setReferences in interface com.inet.report.ReferenceHolder
    • saveXML2GroupField

      protected void saveXML2GroupField(PrintWriter pw, int depth)
      FOR INTERNAL USE ONLY
    • parseElement

      public NodeParser parseElement(com.inet.report.parser.XMLTag group, String tag, Attributes atts, Map<String,Object> parserMap) throws FatalParserException
      FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY Internal method for reading report XML

      Parses 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 interface NodeParser
      Overrides:
      parseElement in class Field
      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 parsed
      atts - The set of attributes in the current XMLTag
      parserMap - 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.
    • validate

      public Validity validate()
      Check if the object is valid and returns the state and details of possible errors.
      Specified by:
      validate in interface Validatable
      Returns:
      the current state, never null.