1
*---------------------------------------------------------------------*
2
* FORM LISTE_ZURUECKHOLEN *
3
4
* ........ *
5
6
FORM LISTE_ZURUECKHOLEN.
7
DATA: IX TYPE I.
8
* IF STATUS-ACTION NE AENDERN OR STATUS-DELETE NE GELOESCHT.
9
* MESSAGE I001(SV).
10
* EXIT.
11
* ENDIF.
12
COUNTER = 0.
13
LOOP AT EXTRACT.
14
CHECK <XMARK> EQ MARKIERT.
15
IF X_HEADER-DELMDTFLAG NE SPACE.
16
IX = SY-TABIX.
17
PERFORM MOVE_EXTRACT_TO_VIEW_WA.
18
PERFORM TEMPORAL_DELIMITATION.
19
ENDIF.
20
COUNTER = COUNTER + 1.
21
READ TABLE TOTAL WITH KEY <VIM_xEXTRACT_KEY> BINARY SEARCH.
22
PERFORM LOGICAL_UNDELETE_TOTAL USING SY-TABIX.
23
MARK_TOTAL = MARK_TOTAL - 1.
24
MARK_EXTRACT = MARK_EXTRACT - 1.
25
IF REPLACE_MODE NE SPACE AND VIM_EXTERNAL_MODE EQ SPACE.
26
<XACT> = <ACTION>. <XMARK> = NICHT_MARKIERT.
27
MODIFY EXTRACT. "no deletion in upgrade mode
28
ELSE.
29
IF TEMPORAL_DELIMITATION_HAPPENED NE SPACE.
30
CLEAR VIM_DELIM_ENTRIES.
31
VIM_DELIM_ENTRIES-INDEX3 = IX.
32
APPEND VIM_DELIM_ENTRIES.
33
34
DELETE EXTRACT.
35
36
37
ENDLOOP.
38
39
PERFORM AFTER_TEMPORAL_DELIMITATION.
40
CLEAR TEMPORAL_DELIMITATION_HAPPENED.
41
42
CHECK REPLACE_MODE EQ SPACE.
43
DESCRIBE TABLE EXTRACT LINES MAXLINES.
44
IF IGNORED_ENTRIES_EXIST EQ SPACE.
45
MESSAGE S002(SV) WITH COUNTER.
46
47
MESSAGE W002(SV) WITH COUNTER.
48
49
IF MAXLINES EQ 0.
50
TITLE-ACTION = AENDERN.
51
STATUS-DELETE = NICHT_GELOESCHT.
52
53
ENDFORM.