Properties SourceCde
txt
1
*---------------------------------------------------------------------*
2
*       FORM ORIGINAL_HOLEN                                           *
3
*---------------------------------------------------------------------*
4
*       ........                                                      *
5
*---------------------------------------------------------------------*
6
FORM original_holen.
7
  DATA: count1 TYPE i, count2 TYPE i, count3 TYPE i, sum TYPE i,
8
        texttab_mod(1) TYPE c.         "SW Texttransl
9
  IF status-action NE aendern OR status-delete EQ geloescht.
10
    MESSAGE i001(sv).
11
    EXIT.
12
  ENDIF.
13
  IF status-mode EQ list_bild.
14
    LOOP AT extract.
15
      CLEAR texttab_mod.
16
      CHECK <xmark> EQ markiert.
17
      ADD 1 TO count1.
18
      IF x_header-texttbexst <> space. "SW Texttransl
19
        PERFORM vim_texttab_modif_for_key CHANGING texttab_mod.
20
      ENDIF.
21
      IF x_header-bastab NE space AND x_header-texttbexst NE space.
22
        CHECK <xact> EQ neuer_eintrag OR ( <xact> EQ original AND
23
              <xact_text> EQ original  AND texttab_mod EQ space ).
24
      ELSE.
25
        CHECK <xact> EQ neuer_eintrag OR ( <xact> EQ original
26
                                     AND texttab_mod EQ space ).
27
      ENDIF.
28
      IF <xact> EQ neuer_eintrag.
29
        ADD 1 TO count2.
30
      ELSE.
31
        ADD 1 TO count3.
32
      ENDIF.
33
    ENDLOOP.
34
  ELSE.
35
    ADD 1 TO count1.
36
    CASE <xact>.
37
      WHEN neuer_eintrag.
38
        ADD 1 TO count2.
39
      WHEN original.
40
        CLEAR texttab_mod.
41
        IF x_header-texttbexst <> space.              "SW Texttransl
42
          PERFORM vim_texttab_modif_for_key CHANGING texttab_mod.
43
        ENDIF.
44
        IF x_header-bastab NE space AND x_header-texttbexst NE space.
45
*          IF sy-datar EQ space AND <table1> EQ <extract_enti> AND
46
          IF sy-datar EQ space AND <table1> EQ <vim_extract_struc>
47
           AND <table1_xtext> EQ <vim_xextract_text>
48
           AND texttab_mod EQ space.
49
            ADD 1 TO count3.
50
          ENDIF.
51
        ELSE.
52
*          IF sy-datar EQ space AND <table1> EQ <table2>
53
          IF sy-datar EQ space AND <table1> EQ <vim_extract_struc>
54
                               AND texttab_mod EQ space.
55
            ADD 1 TO count3.
56
          ENDIF.
57
        ENDIF.
58
    ENDCASE.
59
  ENDIF.
60
  sum = count2 + count3.
61
  IF count1 EQ 0.
62
    MESSAGE s056(sv).
63
  ELSEIF count1 EQ count2.
64
    IF count1 EQ 1.
65
      MESSAGE s057(sv).
66
      IF status-mode EQ detail_bild.
67
        CLEAR function.
68
      ENDIF.
69
    ELSE.
70
      MESSAGE s058(sv).
71
    ENDIF.
72
  ELSEIF count1 EQ count3.
73
    IF count1 EQ 1.
74
      MESSAGE s059(sv).
75
    ELSE.
76
      MESSAGE s060(sv).
77
    ENDIF.
78
  ELSEIF count1 EQ sum.
79
    MESSAGE s061(sv) WITH count3 count2.
80
  ELSE.
81
    CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
82
         EXPORTING
83
              titel     = svim_text_010
84
              textline1 = svim_text_009
85
              textline2 = svim_text_011
86
         IMPORTING
87
              answer    = answer.
88
    IF answer EQ 'J'.
89
      IF status-mode EQ list_bild.
90
        function = 'ORGL'.
91
      ELSE.
92
        IF <xact> NE original OR texttab_mod NE space.
93
          function = 'ORGD'.
94
        ELSE.
95
          answer = 'N'.
96
        ENDIF.
97
      ENDIF.
98
      IF answer = 'J'.
99
*       SET SCREEN 0. LEAVE SCREEN.
100
        vim_next_screen = 0. vim_leave_screen = 'X'.
101
      ENDIF.
102
    ELSE.
103
      CLEAR function.
104
    ENDIF.
105
  ENDIF.
106
ENDFORM.