1 |
2 |
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 |
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 |
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 |
100 | vim_next_screen = 0. vim_leave_screen = 'X'. |
101 | ENDIF. |
102 | ELSE. |
103 | CLEAR function. |
104 | ENDIF. |
105 | ENDIF. |
106 | ENDFORM. |