Properties SourceCde
txt
1
*&--------------------------------------------------------------------*
2
*&      Form DELETE_CHECK_KEYRANGE                                    *
3
*&--------------------------------------------------------------------*
4
* check keyrange for delete                                           *
5
*---------------------------------------------------------------------*
6
FORM DELETE_CHECK_KEYRANGE.
7
  LOCAL: EXTRACT, TOTAL, <TABLE1>.
8
  DATA: DCK_SPECMODE_SAFE LIKE VIM_SPECIAL_MODE.
9
 
10
  CLEAR SY-SUBRC.
11
  CHECK X_HEADER-CUSTOMAUTH CO SAP_CUST_CTRL_CLASSES OR
12
        VIM_ALE_KEYSPEC_CHECK NE SPACE.
13
  DCK_SPECMODE_SAFE = VIM_SPECIAL_MODE.
14
  PERFORM MOVE_EXTRACT_TO_VIEW_WA.
15
  IF STATUS-MODE EQ LIST_BILD.
16
    VIM_SPECIAL_MODE = VIM_DELETE.
17
  ELSE.
18
    CLEAR VIM_SPECIAL_MODE.
19
  ENDIF.
20
  CLEAR VIM_KEYRANGE_ALR_CHECKED.
21
  PERFORM CHECK_ALLOWED_KEYRANGES.
22
* "HCG: In synchronization, Adjust and BC-Set import keyrange-check
23
*  should be neglected and data should be deleted anyway 24/06/2002
24
  IF SY-SUBRC NE 0 AND vim_import_profile EQ SPACE.
25
* synchornization only in BC-Set, only vim_import_profile is enought
26
* to test, if it is called from BC-Set. XB H594362 07022003
27
*                   AND DCK_SPECMODE_SAFE NE vim_upgrade.
28
    IF STATUS-MODE EQ LIST_BILD.
29
      CASE STATUS-TYPE.
30
        WHEN EINSTUFIG.
31
          CALL SCREEN LISTE.
32
          IF OK_CODE EQ 'IGN '. FUNCTION = OK_CODE. ENDIF.
33
        WHEN ZWEISTUFIG.
34
          PERFORM PROCESS_DETAIL_SCREEN USING 'C'.
35
          STATUS-MODE = LIST_BILD.
36
      ENDCASE.
37
    ENDIF.
38
    IF VIM_ALE_KEYSPEC_CHECK NE SPACE. "never delete ALE-locked keys
39
      FUNCTION = 'IGN '.
40
    ENDIF.
41
    CLEAR: SY-SUBRC, OK_CODE.
42
    CASE FUNCTION.
43
      WHEN 'IGN '. SY-SUBRC = 4.
44
      WHEN 'ABR '. SY-SUBRC = 8.
45
    ENDCASE.
46
  ENDIF.
47
* CLEAR VIM_SPECIAL_MODE.
48
  VIM_SPECIAL_MODE = DCK_SPECMODE_SAFE.
49
  FUNCTION = 'DELE'.
50
ENDFORM.                               "delete_check_keyrange