Siebel Reports Administration Guide > Sorting Report Records > How a Memory Sort Report Works >

About Memory Structures


To sort data by the child business component, you must extract data from the master business component, store it, and re-sort it according to the values in the detail business component. The master and detail business component records are obtained through the master and detail datastreams.

In the Opportunities by Sales Rep (OPSLREP) standard report, each row of the opportunity query is processed before the data is formatted. Because data rows are transient objects, they are written into a temporary structure in memory as they are processed.

A global list or memory data buffer component can be used for this purpose. In the Opportunities by Sales Rep report, data rows from the Opportunities query are stored in a global list component. The AcList class, from which global list components are derived, is a smart array structure. A memory buffer (based on the AcMemoryBuffer class) is similar to a global list, but exhibits more complex behavior that is not required for most Siebel reports.

The RowList variable is derived from AcList, the AFC class designed to hold an ordered collection of objects. AcList is set up to function globally and has several methods that make it easy to manage lists. Methods for AcList variables are listed and described in Table 8.

Table 8. Methods Available for AcList Variables
Method
Class Derived From
Description

AddToHead

AcList

Adds an item to the beginning of the list.

AddToTail

AcOrderedCollection

Adds an item to the end of the collection.

Contains

AcList

Returns TRUE if the list contains the item.

Copy

AcList

Copies the contents from another list to the end of this list.

GetAt

AcOrderedCollection

Returns the item at the specified location in the collection.

GetCount

AcCollection

Returns the number of objects in the collection.

GetHead

AcOrderedCollection

Returns the first item in the collection.

GetIndex

AcList

Returns the position of the node specified in the list.

GetTail

AcOrderedCollection

Returns the last item in the collection.

InsertAfter

AcList

Inserts a node in the list after the specified node.

InsertBefore

AcList

Inserts a node in the list before the specified node.

IsEmpty

AcCollection

Reports whether the collection is empty or not.

NewIterator

AcCollection

Creates an iterator for the collection.

Remove

AcCollection

Removes a specified item from the collection.

RemoveAll

AcCollection

Removes all contents from the collection.

RemoveHead

AcList

Removes the first node from the list.

RemoveTail

AcOrderedCollection

Removes the last item in the collection.

Siebel Reports Administration Guide Copyright © 2009, Oracle and/or its affiliates. All rights reserved. Legal Notices.