1
*&--------------------------------------------------------------------*
2
*& Form VIM_APPEND_GLOBAL_TABLE *
3
4
* set global field value (for external call) *
5
6
FORM VIM_APPEND_GLOBAL_TABLE USING VALUE(NAME_OF_TABLE) TYPE C
7
VALUE(BASE_TABLE) LIKE TVDIR-FLAG
8
VALUE(TABLEN) LIKE VIMDESC-TABLEN
9
VALUE(ENTRY_TO_APPEND)
10
VALUE(ACT_FLAG) LIKE TVDIR-FLAG
11
VALUE(MRK_FLAG) LIKE TVDIR-FLAG
12
VALUE(TXTACT_FLAG) LIKE TVDIR-FLAG
13
VAGT_RETURN LIKE SY-SUBRC.
14
DATA: WA(4096) TYPE C, DUM TYPE I.
15
FIELD-SYMBOLS: <TABLE> TYPE TABLE, <ENTRY>.
16
ASSIGN (NAME_OF_TABLE) TO <TABLE>.
17
IF SY-SUBRC EQ 0.
18
WA = ENTRY_TO_APPEND.
19
WA+TABLEN(1) = ACT_FLAG. DUM = TABLEN + 1.
20
WA+DUM(1) = MRK_FLAG. ADD 1 TO DUM.
21
IF BASE_TABLE NE SPACE.
22
WA+DUM(1) = TXTACT_FLAG. ADD 1 TO DUM.
23
ENDIF.
24
ASSIGN WA(DUM) TO <ENTRY>.
25
APPEND <ENTRY> TO <TABLE>.
26
27
VAGT_RETURN = SY-SUBRC.
28
ENDFORM. "vim_append_globall_table