Properties SourceCde
txt
1
*---------------------------------------------------------------------*
2
*       FORM BEENDEN                                                  *
3
*---------------------------------------------------------------------*
4
*       ........                                                      *
5
*---------------------------------------------------------------------*
6
FORM beenden.
7
  DATA: line1(30) TYPE c,
8
        handle TYPE ad_handle,
9
        adrnum TYPE ad_addrnum.
10
 
11
  CASE function.
12
    WHEN 'ANZG'.
13
      line1 = svim_text_001.
14
    WHEN 'ATAB'.
15
      line1 = svim_text_008.
16
    WHEN 'ENDE'.
17
      line1 = svim_text_003.
18
  ENDCASE.
19
  CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
20
       EXPORTING
21
            titel     = line1
22
            textline1 = svim_text_018  "Daten wurden verändert.
23
            textline2 = svim_text_019  "Änderungen vorher sichern ?
24
       IMPORTING
25
            answer    = answer.
26
  CASE answer.
27
    WHEN 'J'.
28
      sy-subrc = 0.
29
    WHEN 'N'.
30
      CLEAR <status>-upd_flag.
31
      IF maint_mode EQ transportieren.
32
        <status>-keytbinvld = 'X'.
33
      ELSEIF maint_mode EQ aendern. "AND x_header-adrnbrflag EQ 'N'.
34
* reset unsaved addresses                          UF557286/2000b
35
        LOOP AT vim_addresses_to_save.
36
          IF vim_addresses_to_save-addrnumber CP '@NEW*'.
37
            CLEAR adrnum.
38
            handle = vim_addresses_to_save-handle.
39
          ELSE.
40
            CLEAR handle.
41
            adrnum = vim_addresses_to_save-addrnumber.
42
          ENDIF.
43
          CALL FUNCTION 'ADDR_SINGLE_RESET'
44
               EXPORTING
45
                    address_number = adrnum
46
                    address_handle = handle
47
               EXCEPTIONS
48
                    OTHERS         = 1.
49
          IF sy-subrc <> 0.
50
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
51
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
52
          ENDIF.
53
        ENDLOOP.
54
        REFRESH vim_addresses_to_save.
55
      ENDIF.                                            "UF557286/2000e
56
      sy-subrc = 8.
57
    WHEN 'A'.
58
      sy-subrc = 12.
59
  ENDCASE.
60
ENDFORM.