Sort (browse sort information)

Top  Previous  Next

 

 

Sort

&BrowseSortOrder

The Sort property is a reference to a structure containing all the sort information for this BrowseClass object. The BrowseClass methods use this property to implement multiple sort orders, range limits, filters, and locators for a single browse list.

Implementation: The BrowseClass.Sort property mimics or shadows the inherited ViewManager.Order property. The Sort property is a reference to a QUEUE declared in ABBROWSE.INC as follows:

BrowseSortOrder QUEUE(SortOrder),TYPE !browse sort information

Locator     &LocatorControl    !locator for this sort order

Resets      &FieldPairsClass   !reset fields for this sort order

Thumb       &ThumbClass        !ThumbClass for this sort order

               END

Notice this BrowseSortOrder queue contains all the fields in the SortOrder queue declared in ABFILE.INC as follows:

SortOrder    QUEUE,TYPE        !VIEW sort information

Filter        &FilterQueue     !ANDed filter expressions

FreeElement   ANY              !The Free key element

LimitType     BYTE             !Range limit type flag

MainKey       &KEY             !The KEY

Order         &STRING          !ORDER expression (equal to KEY)

RangeList     &FieldPairsClass !fields in the range limit

            END

And the SortOrder queue contains a reference to the FilterQueue declared in ABFILE.INC as follows:

FilterQueue QUEUE,TYPE   !VIEW filter information

ID           STRING(30)  !filter ID

Filter       &STRING     !filter expression

           END

So, the BrowseSortOrder queue is, among other things, a queue of queues.

The AddSortOrder method defines sort orders for the browse. The SetSort method applies or activates a sort order for the browse. Only one sort order is active at a time.

See Also: AddSortOrder, SetSort