Properties | SourceCde
Title |  |
Original language | DE | Englisch
Created | 27.10.1998 |  | SAP |
Last changed by | 13.11.2001 |  | SAP |
Status | Active |
Attributes
Type | INCLUDE program |
Status | Test program |
Application | Basis |
Package | SVIM | Basis View Maintenance
| Editor lock
txt
    1
    *---------------------------------------------------------------------*
    2
    *       FORM FILL_EXTRACT                                             *
    3
    *---------------------------------------------------------------------*
    4
    *       ........                                                      *
    5
    *---------------------------------------------------------------------*
    6
    FORM fill_extract.
    7
     DATA: rec LIKE sy-subrc VALUE 9, total_safe(4096) TYPE c, indei TYPE i,
    8
                       hf TYPE i VALUE 1.
    9
      FIELD-SYMBOLS: <begdate_mask>.
    10
      REFRESH: extract. CLEAR extract.
    11
      CLEAR vim_mainkey.
    12
      TRANSLATE vim_no_mainkey_exists USING vim_no_mkey_not_procsd_patt.
    13
      IF x_header-delmdtflag NE space.
    14
        ASSIGN <vim_new_begdate> TO <begdate_mask> TYPE 'C'.
    15
      ENDIF.
    16
      LOOP AT total.
    17
        PERFORM normal_select.
    18
        CHECK sy-subrc EQ 0.
    19
        IF x_header-delmdtflag NE space AND
    20
           vim_ignore_collapsed_mainkeys EQ space.
    21
          PERFORM check_and_modify_mainkey_tab USING rec.
    22
          IF rec NE 0.
    23
            vim_coll_mainkeys_beg_ix = vim_last_coll_mainkeys_ix.
    24
          ENDIF.
    25
          CHECK rec LT 8.
    26
          IF rec EQ 4. rec = 9. ENDIF.
    27
        ENDIF.
    28
        extract = total.
    29
        APPEND extract.
    30
      ENDLOOP.
    31
      vim_coll_mainkeys_beg_ix = 1.
    32
      IF rec NE 9 AND rec NE 0.
    33
        PERFORM mod_extract_and_mainkey_tab USING 'A' 0.
    34
      ENDIF.
    35
      DESCRIBE TABLE extract LINES maxlines.
    36
      mark_extract = mark_total.
    37
      status-data = gesamtdaten.
    38
      title-data  = gesamtdaten.
    39
      CLEAR <status>-selected.
    40
    * <STATUS>-DISPL_MODE = EXPANDED. "default display mode
    41
      IF maxlines EQ 0.
    42
        PERFORM vim_send_sv005_or_sv766 USING '766'
    43
                                              'RESET'.
    44
        IF function NE 'DELE' AND function NE 'SAVE'.           "HWR
    45
          IF x_header-selection EQ space AND fill_extr_first_proc EQ space.
    46
            IF NOT vim_oc_inst IS INITIAL
    47
    * data access restricted?
    48
              AND ( ( <status>-st_action = aendern
    49
                    AND NOT vim_oc_inst->oc_selcrit_maint_tab IS INITIAL )
    50
              OR ( 'ST' CS <status>-st_action
    51
                    AND NOT vim_oc_inst->oc_selcrit_read_tab IS INITIAL ) ).
    52
              MESSAGE s766(sv).
    53
    *   Eingeschränkte Anzeige von Datensätzen.
    54
            ELSE.
    55
              MESSAGE s065(sv).            "keine Einträge vorhanden
    56
            ENDIF.
    57
            MOVE 'X' TO fill_extr_first_proc.
    58
          ELSE.
    59
            MESSAGE s004(sv). "keine Einträge gemäß Selektion gefunden
    60
          ENDIF.
    61
        ENDIF.                                                  "HWR
    62
        EXIT.
    63
      ELSEIF maxlines EQ 1.
    64
        PERFORM vim_maintain_single_set.    "UFint2329966/2000
    65
      ELSEIF NOT vim_oc_inst IS INITIAL AND
    66
       function NE 'DELE' AND function NE 'SAVE'.
    67
    * data access restricted?
    68
        IF ( <status>-st_action = aendern
    69
             AND NOT vim_oc_inst->oc_selcrit_maint_tab IS INITIAL )
    70
         OR ( 'ST' CS <status>-st_action
    71
              AND NOT vim_oc_inst->oc_selcrit_read_tab IS INITIAL ).
    72
          PERFORM vim_send_sv005_or_sv766 USING '766'
    73
                                              'SENDIT'.
    74
    *   Eingeschränkte Anzeige von Datensätzen.
    75
        ENDIF.
    76
      ELSE.
    77
        PERFORM vim_send_sv005_or_sv766 USING '766'
    78
                                              'RESET'.
    79
      ENDIF.
    80
    ENDFORM.                    "fill_extract