Class SortField

    • Field Detail

      • ASCENDING_ORDER

        public static final int ASCENDING_ORDER
        Sort records ascending.
        See Also:
        Constant Field Values
      • DESCENDING_ORDER

        public static final int DESCENDING_ORDER
        Sort records descending.
        See Also:
        Constant Field Values
      • ORIGINAL_ORDER

        public static final int ORIGINAL_ORDER
        Do not sort records, let it unsorted.
        See Also:
        Constant Field Values
      • ASCENDING_ALPHA_NUMERIC_ORDER

        public static final int ASCENDING_ALPHA_NUMERIC_ORDER
        Sort records ascending.
        See Also:
        Constant Field Values
      • DESCENDING_ALPHA_NUMERIC_ORDER

        public static final int DESCENDING_ALPHA_NUMERIC_ORDER
        Sort records descending.
        See Also:
        Constant Field Values
    • Method Detail

      • setName

        public void setName​(java.lang.String name)
                     throws ReportException
        Sets the name of the sort field. The name must be the name of the database field, which should be the sort criterion. The name of the field should start with a special character for instanciation:
        • no charcter, if the field is a database field
        • a '%', if the field is a SqlExprField
        • a '#', if the field is a SummaryField
        • a '@', if the field is a FormulaField
        • a '?', if the field is a PromptField
        This is different to the naming of a field, where you do not concatenate the character, because you give the field only a name. Here you want to instanciate an existing field with its name.
        Specified by:
        setName in class Field
        Parameters:
        name - The name of the sort field for example, Users.UserID
        Throws:
        ReportException - if no database field with this name exists
        java.lang.IllegalArgumentException - if a sort field with name equals name already exists
        Since:
        6.0
      • setSortDirectionFormula

        public void setSortDirectionFormula​(FormulaField formula)
                                     throws ReportException
        Sets the formula of sort direction. This formula must be of type FormulaField.FORMULA_PROPERTY and must return a positive int value. Allowed range of values 0 for ASCENDING_ORDER, 1 for DESCENDING_ORDER, 2 for ORIGINAL_ORDER (data stays unsorted). Other formula will be ignored.
        Parameters:
        formula - for sort direction or null to remove the sort direction formula.
        Throws:
        ReportException - Wrong formula, formula type or return value of formula
        Since:
        6.0
      • saveFieldXML2

        protected void saveFieldXML2​(java.io.PrintWriter pw,
                                     int depth)
        XML2: FOR INTERNAL USE ONLY
        Specified by:
        saveFieldXML2 in class Field
        Parameters:
        pw - the print writer
        depth - the current depth
      • addReferencedObject

        public final void addReferencedObject​(com.inet.report.ReferencedObject reference)
        FOR INTERNAL USE ONLY
        Specified by:
        addReferencedObject in interface com.inet.report.ReferenceHolder
        Parameters:
        reference - a new referenced object
        Since:
        6.0
      • getReferencedObjects

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

        public final int getRealReferencedObjectCount()
        FOR INTERNAL USE ONLY
        Specified by:
        getRealReferencedObjectCount in interface com.inet.report.ReferenceHolder
        Returns:
        the count of real referenced objects
        Since:
        6.0
      • getReferencedObjectCount

        public final int getReferencedObjectCount()
        FOR INTERNAL USE ONLY
        Specified by:
        getReferencedObjectCount in interface com.inet.report.ReferenceHolder
        Returns:
        the count of referenced objects
      • removeReferencedObject

        public final void removeReferencedObject​(com.inet.report.ReferencedObject reference)
        FOR INTERNAL USE ONLY
        Specified by:
        removeReferencedObject in interface com.inet.report.ReferenceHolder
        Parameters:
        reference - the object
        Since:
        6.0
      • setReferences

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

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

        public boolean isUsed()
        FOR INTERNAL USE ONLY
        Overrides:
        isUsed in class Field
        Returns:
        is always used
        Since:
        6.0
      • equals

        public boolean equals​(java.lang.Object obj)
        Indicates whether some other SortField is "equal to" this one.
        Overrides:
        equals in class Field
        Parameters:
        obj - the reference SortField with which to compare.
        Returns:
        true if this SortField is the same as the SortField argument; false otherwise.
        Since:
        6.0
      • updateName

        public void updateName()
        Updates the field's ref name. Note that this method simply updates the name of this SortField by calling {FieldField.getRefName().
        Since:
        7.0
        See Also:
        Field.getRefName()
      • parseElement

        public NodeParser parseElement​(com.inet.report.parser.XMLTag group,
                                       java.lang.String tag,
                                       org.xml.sax.Attributes atts,
                                       java.util.Map<java.lang.String,​java.lang.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.