Properties SourceCde
txt
1
*&---------------------------------------------------------------------*
2
*&  Include           LSVIMF60                                         *
3
*&---------------------------------------------------------------------*
4
*&---------------------------------------------------------------------*
5
*&      Form  vim_maintain_single_set
6
*&---------------------------------------------------------------------*
7
*       text
8
*----------------------------------------------------------------------*
9
*  -->  p1        text
10
*  <--  p2        text
11
*----------------------------------------------------------------------*
12
FORM vim_maintain_single_set.
13
  Data: msgno like sy-msgno.
14
 
15
  IF vim_single_entry_function EQ space AND
16
     ( function NE 'DELE' AND function NE 'SAVE' ).       "HWR
17
      IF vim_oc_inst IS INITIAL.
18
        msgno = '005'.
19
      ELSE.
20
        READ TABLE dpl_sellist WITH KEY from_auth = space
21
         TRANSPORTING NO FIELDS.
22
        IF sy-subrc = 0.
23
          msgno = '005'.
24
        ELSE.
25
          msgno = '766'.
26
*   Eingeschränkte Anzeige von Datensätzen.
27
        ENDIF.
28
      ENDIF.
29
    PERFORM vim_send_sv005_or_sv766 USING msgno
30
                                          'SENDIT'.
31
  ENDIF.                                                  "HWR
32
  IF status-type EQ zweistufig AND function NE 'ABR '
33
     AND function NE 'KOPF'
34
     AND function NE 'IGN '."SW: nicht ex. Status ZCDGM (1211787/98)
35
    <status>-firstline = <status>-cur_line = nextline.
36
    function = 'DETA'.
37
    IF x_header-delmdtflag NE space.
38
      TRANSLATE vim_no_mainkey_exists USING
39
                                        vim_no_mkey_not_procsd_patt.
40
    ENDIF.
41
    PERFORM process_detail_screen USING 'S'.
42
  ENDIF.
43
ENDFORM.                    " vim_maintain_single_set
44
*&---------------------------------------------------------------------*
45
*&      Form  vim_send_sv005_or_sv766
46
*&---------------------------------------------------------------------*
47
*       Send messages only once unless status has not been resetted
48
*----------------------------------------------------------------------*
49
*      -->P_MSGNO Message number to be sent as s-message
50
*      -->P_MODE  SENDIT: Send S-Message if it hasn't been sent before.
51
*                 RESET:  Reset status.
52
*----------------------------------------------------------------------*
53
FORM vim_send_sv005_or_sv766  USING p_msgno like sy-msgno
54
                                    p_mode TYPE char6.
55
 
56
  STATICS: sent_already TYPE xfeld,
57
           viewname TYPE viewname.
58
 
59
  IF viewname <> x_header-viewname.
60
    viewname = x_header-viewname.
61
    CLEAR sent_already.
62
  ENDIF.
63
  CASE p_mode.
64
    WHEN 'SENDIT'.
65
      CHECK sent_already = space.
66
      sent_already = 'X'.
67
      MESSAGE ID 'SV' TYPE 'S' NUMBER p_msgno.
68
    WHEN 'RESET'.
69
      CLEAR sent_already.
70
  ENDCASE.
71
ENDFORM.                    " vim_send_sv005_or_sv766