
A Range Context Node is a context node of the cardinality 0..n or 1..n. It has the following different properties to context nodes of this cardinality used up to now (known as standard context nodes from now on)
A context node of cardinality 0..n or 1..n manages table-type data. A standard context node contains either the complete data set (the whole internal table), or it is empty. In contrast to a standard context node, a range context node can also manage segments of an internal table. This enables just the data set requested to be passed to the context node (for example, only visible lines of a table). This reduces the amount of memory required by the context node.
Range Supply Method
A range context node can have a range supply method. Like a standard supply method, this is also called when data is requested that is not in the context node. Unlike the standard supply method, the range supply method is called for the exact data set requested and this information is passed in an importing parameter.
You can only create a range context node dynamically. To do this, you use method ADD_NEW_CHILD_NODE of interface IF_WD_CONTEXT_NODE_INFO. By setting parameter IS_RANGE_NODE=’X’ you define that the node to be created is to have a range context node. With parameter SUPPLY_METHOD and SUPPLY_OBJECT you define which range supply method is to be used.
Caution
It is not possible to call a standard supply method for a range context node. Doing so will lead to a short dump.
Syntax
Signature of the Range Supply Method:
NODE IMP TYPE REF TO IF_WD_CONTEXT_NODE_RANGE PARENT_ELEMENT IMP TYPE REF TO IF_WD_CONTEXT_ELEMENT FROM_INDEX IMP TYPE I TO_INDEX IMP TYPE I
See IF_WD_CONTEXT_NODE_RANGE .