company logo

PropertyHandle :: SetOrder - Set sort order

When there are different sort orders (indexes) supported for a collection one of those can be selected as current sort order. The sort order or index is selected by the key name that is associated with the index. Changing the sort order will reset the selection in the property handle and no instance is selected when the function returns.

When selecting a generic attribute index the attribute type (as e.g. language) can be passed to select the proper index. If no attribute type is passed it is evaluated from the generic attribute.

When not passing a sort key name the default index is set as current sort order. The default index is the identifying key index (when defined for the collection) or the first unique index in the list of available indexes. Passing "*" for the sort key name refreshes the sort order. This way it is possible to set the proper index for a generic attribute index or to reorganize a temporary index.When no index is defined for the passed key name or the attribute type is not defined the function returns an error (YES).

Return value:  Success ( logical  )

Implementation overview

Implementation details

  1. - internal feature (not documented)
    logical PropertyHandle  :: SetOrder ( BNFData *parm_bnf )
    • parm_bnf - BNF for expression
  2. to list
  3. - internal feature (not documented)
    logical PropertyHandle  :: SetOrder ( NString &key_name, NString &attrstr )
    • key_name - Key name

      The key name is passed as 0-terminated string or as buffer with a maximum size of 40 characters and trailing blanks.

    • attrstr - Attribute type

      The attribute type is passed as 0-terminated string. It must be one of the defined values in the enumerated value set for the attribute types defined for the generic attribute. When the index is not generic, no attribute needs to be passes. If no attribute is passed for a generic index the current setting is used.

      Notes:

      retval checked for const &NString

  4. to list