GET CURSOR


Variants



1. GET CURSOR FIELD f.
2. GET CURSOR LINE lin.

Variant 1

GET CURSOR FIELD f.

Additions




1. ... OFFSET off
2. ... LINE lin
3. ... VALUE g
4. ... LENGTH len

Effect

Transfers the name of the field at the cursor position to the field f .

The return code value is set as follows:


SY-SUBRC = 0 Cursor was positionedd on a field.
SY_SUBRC = 4 Cursor was not positioned on a field.

Note

Unlike screen processing, list processing allows you to output literals, field symbols, parameters and local variables of subroutines. Literals, local variables and VALUE parameters of subroutines are treated like fields without names (field name SPACE , return value 0).
Otherwise, GET CURSOR FIELD returns only names of global fields, regardless of whether they are addressed directly (i.e. by " WRITE "), by field symbols or by reference parameters.

Example

DATA: CURSORFIELD(20), GLOB_FIELD(20) VALUE 'global field', REF_PARAMETER(30) VALUE 'parameter by reference', VAL_PARAMETER(30) VALUE 'parameter by value', FIELD_SYMBOL(20) VALUE 'field-symbol'. FIELD-SYMBOLS: <F>. PERFORM WRITE_LIST USING REF_PARAMETER VAL_PARAMETER. ASSIGN GLOB_FIELD TO <F>. AT LINE-SELECTION. GET CURSOR FIELD CURSORFIELD. WRITE: / CURSORFIELD, SY-SUBRC. FORM WRITE_LIST USING RP VALUE(VP). DATA: LOK_FIELD(20) VALUE 'lokal field'. ASSIGN FIELD_SYMBOL TO <F>. WRITE: / GLOB_FIELD, / LOK_FIELD, / RP, / VP, / 'literal', / FIELD_SYMBOL. ENDFORM.

When you double-click on the word " global field ", CURSORFIELD contains the field name GLOB_FIELD , on " parameter by reference " the field name REF_PARAMETER , on " field symbol " the field name FIELD_SYMBOL , and on " local field ", " parameter by value " and " literal " the value SPACE .

Addition 1

... OFFSET off

Effect

Copies the position of the cursor within the field to the field off (1st column = 0).
If the cursor is not somewhere within a field ( SY-SUBRC = 4 ), the offset value is set to 0.

Addition 2

... LINE lin

Effect

With step loops, lin contains the number of the loop line where the cursor stands. In list processing, this is the absolute line number (as stored in the system field SY-LILLI ).

Addition 3

... VALUE g

Effect

g contains the value of the field where the cursor stands, always in output format (character display).

Addition 4

... LENGTH len

Effect

len contains the output length of the field where the cursor stands.

Variant 2

GET CURSOR LINE lin.

Additions




1. ... OFFSET off
2. ... VALUE g
3. ... LENGTH len

Effect

As for variant 1 with addition LINE , except that there are differences with the return value and the effect of the additions.

The return code value is set as follows:


SY-SUBRC = 0 The cursor is on one of the list lines (list processing) or on a loop line (step loop).
SY_SUBRC = 4 The cursor is not on one of the list or loop lines.

Addition 1

... OFFSET off

Effect

Applies to list processing only. The field off contains the position of the cursor releative to the beginning of the list line (1st column = 0). With horizontally shifted lists, the offset value can thus be greater than 0, even if the cursor is positioned on the extreme left of the window.

Addition 2

... VALUE g

Effect

List processing only. The field g contains the list line where the cursor is positioned.

Addition 3

... LENGTH len

Effect

List processing only. len contains the length of the line ( LINE-SIZE ).
Related SET CURSOR

Index
© SAP AG 1996