1  | 
2  | 
3  | 
4  | 
5  | 
6  | FORM update_entry USING value(ue_total_only).  | 
7  |   DATA: rec LIKE sy-subrc, tabix LIKE sy-tabix.  | 
8  |   tabix = sy-tabix.  | 
9  |   IF <status>-upd_flag EQ 'X' OR <status>-upd_flag EQ 'E' OR  | 
10  |      <status>-upd_flag EQ 'Y'.  | 
11  |     IF x_header-customauth CO sap_cust_ctrl_classes OR  | 
12  |        vim_ale_keyspec_check NE space.  | 
13  |       PERFORM check_allowed_keyranges.  | 
14  |     ENDIF.  | 
15  |     move <table1> to <vim_total_struc>.  | 
16  | 
17  |     IF <xact> EQ original.  | 
18  |       <action>          = aendern.  | 
19  |     ELSE.  | 
20  |       <action>          = <xact>.  | 
21  |     ENDIF.  | 
22  |   ENDIF.  | 
23  |   IF x_header-bastab NE space AND x_header-texttbexst NE space AND  | 
24  |      <status>-upd_flag EQ 'X' OR <status>-upd_flag EQ 'T' OR  | 
25  |      <status>-upd_flag EQ 'Y'.  | 
26  |     IF x_header-customauth CO sap_cust_ctrl_classes OR  | 
27  |        vim_ale_keyspec_check NE space.  | 
28  |       PERFORM check_allowed_keyranges.  | 
29  |     ENDIF.  | 
30  |     IF <status>-upd_flag NE 'Y'.  | 
31  |       IF <vim_xtotal_text> EQ <text_initial_x>.  | 
32  |         <action_text> = neuer_eintrag.  | 
33  |       ELSE.  | 
34  |         IF <xact_text> EQ original.  | 
35  |           <action_text>          = aendern.  | 
36  |         ELSE.  | 
37  |           <action_text>          = <xact_text>.  | 
38  |         ENDIF.  | 
39  |       ENDIF.  | 
40  |     ENDIF.  | 
41  |     MOVE <table1_xtext> TO <vim_xtotal_text>.  | 
42  | 
43  |   ENDIF.  | 
44  |   IF replace_mode NE space.  | 
45  |     <mark> = nicht_markiert.  | 
46  |   ELSE.  | 
47  |     <mark> = <xmark>.  | 
48  |   ENDIF.  | 
49  |   MODIFY total  INDEX tabix.  | 
50  |   IF ue_total_only EQ space.  | 
51  |     IF x_header-delmdtflag NE space.  | 
52  |       PERFORM check_if_entry_is_to_display USING 'L' <vim_xtotal_key>  | 
53  |                                                  'X' <vim_begdate>.  | 
54  |       rec = sy-subrc.  | 
55  |     ENDIF.  | 
56  |     extract = total.  | 
57  |     IF x_header-delmdtflag EQ space OR rec LT 8.  | 
58  |       MODIFY extract INDEX index.  | 
59  |     ENDIF.  | 
60  |   ENDIF.  | 
61  | ENDFORM.                               "update_entry  |