Properties SourceCde
txt
1
TABLES: e070, e071k, e071, tadir, dderr, tddat, objh.
2
 
3
TYPE-POOLS: cxtab, cmpwl, vimty, slctr, trwbo, scpr, slis, szadr.
4
 
5
CLASS: cl_abap_char_utilities DEFINITION LOAD.
6
 
7
* Adresspflege Übergangslösung anfang
8
TABLES: sadr, sadr2, sadr3, sadr4, sadr5.
9
DATA: sadr_keylen  TYPE i,             "key length of table SADR
10
      sadr_namtab_read TYPE c.                              "flag:
11
 
12
* Adresspflege Übergangslösung ende
13
 
14
DATA: maint_stat LIKE vimstatus.
15
 
16
FIELD-SYMBOLS: <vim_ctotal> TYPE ANY, <vim_cextract> TYPE ANY,
17
               <vim_xtotal> TYPE x, <vim_xextract> TYPE x,
18
               <vim_total_struc> TYPE ANY,
19
               <vim_extract_struc> TYPE ANY,
20
               <vim_tot_txt_struc> TYPE ANY,
21
               <vim_ext_txt_struc> TYPE ANY,
22
               <f1> TYPE ANY, <name> TYPE ANY, <table1> TYPE ANY,
23
               <table2> TYPE ANY, <orig_key> TYPE x,
24
               <client> TYPE ANY, <vim_total_key> TYPE ANY,
25
               <vim_extract_key> TYPE ANY,
26
               <vim_xtotal_key> TYPE x,
27
               <vim_xextract_key> TYPE x,
28
               <vim_client_initial> TYPE ANY.
29
* unicode
30
FIELD-SYMBOLS: <table1_x> TYPE x,
31
               <table2_x> TYPE x,
32
               <f1_x> TYPE x,
33
               <table1_wa> TYPE ANY,
34
               <table1_wax> TYPE x,
35
               <f1_wax> TYPE x,
36
               <vim_corr_keyx> TYPE x,
37
               <initial_x> TYPE x.
38
FIELD-SYMBOLS: <mark> TYPE ANY, <action> TYPE ANY,
39
               <xmark> TYPE ANY, <xact> TYPE ANY, <initial> TYPE ANY,
40
               <status> STRUCTURE vimstatus DEFAULT maint_stat,
41
               <address_number> TYPE ANY,
42
               <user_exit_field> TYPE ANY,
43
               <replace_field> TYPE ANY,
44
               <vim_begdate>     LIKE sy-datum,
45
               <vim_new_begdate> LIKE sy-datum,
46
               <vim_enddate>     LIKE sy-datum,
47
               <vim_enddate_mask> TYPE ANY,
48
               <vim_mainkey_mask> TYPE ANY,
49
               <vim_prtfky_wa> TYPE ANY, <vim_prtfky_extract> TYPE ANY,
50
               <vim_prtfky_total> TYPE ANY,
51
               <vim_begdate_mask> TYPE ANY,
52
               <vim_collapsed_keyx> TYPE x,
53
               <vim_collapsed_logkeyx> TYPE x,
54
               <vim_collapsed_key_afx> TYPE x,
55
               <vim_merged_keyx> TYPE x,
56
               <vim_total_address_number> TYPE ANY,
57
               <vim_addr_handle_x> TYPE x,
58
* Unicode
59
  <vim_h_mkey> TYPE x, <vim_h_old_mkey> TYPE x,
60
  <vim_h_coll_mkey> TYPE x, <vim_h_merged_key> TYPE x,
61
  <vim_h_coll_bfkey> TYPE x, <vim_h_coll_logkey> TYPE x,
62
  <vim_f1_beforex> TYPE x, <vim_f1_afterx> TYPE x,
63
  <vim_mkey_beforex> TYPE x, <vim_mkey_afterx> TYPE x,
64
  <vim_tot_mkey_beforex> TYPE x, <vim_tot_mkey_afterx> TYPE x,
65
  <vim_ext_mkey_beforex> TYPE x, <vim_ext_mkey_afterx> TYPE x,
66
  <vim_old_mkey_beforex> TYPE x, <vim_old_mkey_afterx> TYPE x,
67
  <vim_collapsed_mkey_bfx> TYPE x,
68
* for downward-compatibility only:
69
  <vim_f1_before>, <vim_f1_after>,
70
  <vim_mkey_before>, <vim_mkey_after>,
71
  <vim_tot_mkey_before>, <vim_tot_mkey_after>,
72
  <vim_ext_mkey_before>, <vim_ext_mkey_after>,
73
  <vim_old_mkey_before>, <vim_old_mkey_after>,
74
  <vim_collapsed_key_af>, <vim_collapsed_logkey>,
75
  <vim_merged_key>, <vim_collapsed_key>.
76
*
77
FIELD-SYMBOLS: <subsetfield> TYPE ANY, <rdonlyfield> TYPE ANY,
78
               <value> TYPE ANY,
79
               <state> STRUCTURE vimstatus DEFAULT maint_stat,
80
               <vim_tctrl> TYPE cxtab_control, <vim_sellist> TYPE table,
81
               <vim_ck_sellist> TYPE table, <vim_field_value> TYPE ANY,
82
               <vim_scrform_name> TYPE ANY,
83
               <vim_auth_sellist> TYPE table.
84
FIELD-SYMBOLS: <table1_text> TYPE ANY, <table1_xtext> TYPE x,
85
               <total_text> TYPE ANY, <extract_text> TYPE ANY,
86
               <vim_xtotal_text> TYPE x, <vim_xextract_text> TYPE x,
87
               <action_text> TYPE ANY,
88
               <xact_text> TYPE ANY,
89
               <extract_enti> TYPE ANY, <vim_xextract_enti> TYPE x,
90
               <textkey> TYPE ANY, <initial_textkey> TYPE ANY,
91
               <textkey_x> TYPE x, <initial_textkey_x> TYPE x,
92
               <text_initial> TYPE ANY, <text_initial_x> TYPE x,
93
               <vim_text_enddate> TYPE ANY.
94
FIELD-SYMBOLS: <vim_texttab> TYPE table,               "SW Texttransl ..
95
*                            Type VIM_TAB_US/ .. /VIM_TAB_UL
96
               <vim_read_langus> TYPE table. "SW Texttransl
97
*----------------------------------------------------------------------*
98
* Declaration of types                                                 *
99
*----------------------------------------------------------------------*
100
types: vim_ko200_tab_type type table of ko200.
101
TYPES: BEGIN OF state_vector,
102
         type(1)   TYPE c,             " E=Einstufig Z=Zweistufig
103
         action(1) TYPE c,             " S=Anz., U=Änd., A=Hinzuf., T=Tr
104
         mode(1)   TYPE c,             " L=Liste, D=Detail
105
         data(1)   TYPE c, " G=gesamt, X=Extract, D=Geloeschte
106
         mark(1)   TYPE c,             " M=Markiert,  =Nicht Markiert
107
         delete(1) TYPE c,             " D=Gelöscht,  =Nicht Gelöscht
108
         fill1(1)  TYPE c,             "filler, not used
109
         fill2(1)  TYPE c,                                  "     - " -
110
       END OF state_vector,
111
       vim_tabkey TYPE tabl4096,
112
       BEGIN OF vim_tabkey_c,
113
        line(255) TYPE c,
114
       END OF vim_tabkey_c,
115
       BEGIN OF vim_ck_selcond,
116
         field LIKE vimnamtab-bastabfld,
117
         operator(2) TYPE c,
118
         hk1(1) TYPE c,
119
         value LIKE vimsellist-value,
120
         hk2(1) TYPE c,
121
         and LIKE vimsellist-and_or,
122
       END OF vim_ck_selcond,
123
       vimexclfldtab TYPE STANDARD TABLE OF vimexclfld
124
                          WITH DEFAULT KEY  INITIAL SIZE 10,
125
       BEGIN OF vimexclfldtabsline,
126
         viewname LIKE tvdir-tabname,
127
         excl_pos_tab TYPE vimexclfldtab,
128
         excl_rpl_tab TYPE vimexclfldtab,
129
         excl_que_tab TYPE vimexclfldtab,
130
       END OF vimexclfldtabsline,
131
       vimexclfldtabs TYPE SORTED TABLE OF vimexclfldtabsline
132
                           WITH UNIQUE KEY viewname,
133
       BEGIN OF vim_delim_entr_tl, "indizes of delim. entries
134
         index1 TYPE i,            "entries with mainkey in total
135
         index2 TYPE i,
136
         index3 TYPE i,            "current entry in extract in
137
                                   "collapsed mode
138
         index_corr(1) TYPE c,
139
       END OF vim_delim_entr_tl,
140
       BEGIN OF vim_collapsed_mkeys_tl,"collapsed mainkeys
141
         mkey_bf TYPE vim_tabkey_c,
142
         mainkey TYPE vim_tabkey_c,
143
         log_key TYPE vim_tabkey_c,
144
       END OF vim_collapsed_mkeys_tl,
145
       BEGIN OF vim_merged_entr_tl,    "merged entries
146
         new_key TYPE vim_tabkey,
147
         merged_key TYPE vim_tabkey,
148
         new_begdate TYPE d,
149
         new_enddate TYPE d,
150
         merged_begdate TYPE d,
151
         merged_enddate TYPE d,
152
       END OF vim_merged_entr_tl,
153
       BEGIN OF vim_ale_keyspec_objs,
154
         oname LIKE objh-objectname,
155
         otype LIKE objh-objecttype,
156
       END OF vim_ale_keyspec_objs,
157
       vim_flds_tab_type TYPE TABLE OF fieldname,           "fieldlist
158
       vimnamtab_type type table of vimnamtab.
159
 
160
* Definitionen für Texterfassung in mehreren Sprachen  "SW Texttransl ..
161
CONSTANTS:
162
      ultra_short_tab TYPE i VALUE 32,
163
      very_short_tab TYPE i VALUE 48,
164
      short_tab TYPE i VALUE 64,
165
      middle_tab TYPE i VALUE 128,
166
      long_tab TYPE i VALUE 256,
167
      very_long_tab TYPE i VALUE 512,
168
      ultra_long_tab TYPE i VALUE 4096,
169
      vim_max_keylen_show TYPE i VALUE 120,
170
      vim_max_textfields TYPE i VALUE 8,   "Anzahl Textfelder auf D0100
171
      vim_max_keyfields TYPE i VALUE 10.   "  "    Keyfelder   "     "
172
 
173
TYPES: vim_line_ul(ultra_long_tab)  TYPE c,
174
       vim_line_vl(very_long_tab)   TYPE c,
175
       vim_line_l(long_tab)         TYPE c,
176
       vim_line_m(middle_tab)       TYPE c,
177
       vim_line_s(short_tab)        TYPE c,
178
       vim_line_vs(very_short_tab)  TYPE c,
179
       vim_line_us(ultra_short_tab) TYPE c,
180
 
181
       vim_tab_ul  TYPE vim_line_ul OCCURS 0,
182
       vim_tab_vl  TYPE vim_line_vl OCCURS 0,
183
       vim_tab_l   TYPE vim_line_l OCCURS 0,
184
       vim_tab_m   TYPE vim_line_m OCCURS 0,
185
       vim_tab_s   TYPE vim_line_s OCCURS 0,
186
       vim_tab_vs  TYPE vim_line_vs OCCURS 0,
187
       vim_tab_us  TYPE vim_line_us OCCURS 0.
188
 
189
TYPES: BEGIN OF vim_variable_tab,
190
         valid_idx LIKE sy-index,      " Index der gefüllten Tabelle
191
         tab_us TYPE vim_tab_us,       " falls benutzt -> valid_idx = 2
192
         tab_vs TYPE vim_tab_vs,       "     "                "     = 3
193
         tab_s  TYPE vim_tab_s,
194
         tab_m  TYPE vim_tab_m,
195
         tab_l  TYPE vim_tab_l,
196
         tab_vl TYPE vim_tab_vl,
197
         tab_ul TYPE vim_tab_ul,
198
        END OF vim_variable_tab.
199
 
200
TYPES: BEGIN OF vim_tabdata_record,
201
         viewname   LIKE tvdir-tabname,
202
         sel_langus LIKE t002-spras OCCURS 0,
203
         all_langus(1) TYPE c,
204
         tabdata    TYPE vim_variable_tab,
205
       END OF vim_tabdata_record.
206
* lok. Hilfsvariable für Absprung in Langtextpflege über User-Exit
207
DATA: vim_internal_ltext_call(1) TYPE c.              ".. SW Texttransl
208
 
209
*----------------------------------------------------------------------*
210
* Declaration of constants                                             *
211
*----------------------------------------------------------------------*
212
CONSTANTS:
213
      read(4) TYPE c VALUE 'READ',
214
      edit(4) TYPE c VALUE 'EDIT',
215
      read_and_edit(4) TYPE c VALUE 'RDED',
216
      vim_read_text(4) TYPE c VALUE 'RTXT',                 "SW Textimp
217
        " FCODE: Einlesen + zusätzl. Lesen der Texttab in allen Sprachen
218
      save(4) TYPE c VALUE 'SAVE',
219
      reset_list(4) TYPE c VALUE 'ORGL',
220
      reset_entry(4) TYPE c VALUE 'ORGD',
221
      switch_to_show_mode(4) TYPE c VALUE 'ANZG',
222
      switch_to_update_mode(4) TYPE c VALUE 'AEND',
223
      switch_transp_to_upd_mode(4) TYPE c VALUE 'TRAE',
224
      get_another_view(4) TYPE c VALUE 'ATAB',
225
      back(4) TYPE c VALUE 'BACK',
226
      end(4) TYPE c VALUE 'ENDE',
227
      canc(4) TYPE c VALUE 'ABR ',
228
      transport(4) VALUE 'TRSP',
229
      subset(1) TYPE c VALUE 'S',
230
      authority type sychar01 value 'A',
231
      ddic_marks(2)   TYPE c VALUE 'XB', "ddic marks for ddic-flag
232
      vim_subset_marks(2) TYPE c VALUE 'SB', "subset marks for ddic-flag
233
      vim_subset_marks_mult(4) TYPE c VALUE 'SBMA', "including authority
234
                                                            "and mult
235
      rdonly(1) TYPE c VALUE 'R',
236
      vim_hidden(1) TYPE c VALUE 'H',
237
      adrnbr(1) TYPE c VALUE 'A',
238
      usrexi(1) TYPE c VALUE 'X',
239
      client_length LIKE sy-fdpos VALUE '3', "in characters
240
      vim_datum_length LIKE sy-fdpos VALUE '8',
241
      vim_spras_length LIKE sy-fdpos VALUE '1',
242
      fname_length  TYPE i VALUE '30', "max. fieldname length
243
      compl_form_offs LIKE sy-fdpos VALUE '6',
244
      corr_form_offs LIKE sy-fdpos VALUE '11',
245
      transporter LIKE tadir-pgmid VALUE 'R3TR', "name of transport pgm
246
      transp_object LIKE tadir-object VALUE 'TABU', "object to transport
247
      vim_view_type LIKE e071k-mastertype VALUE 'VDAT',
248
      vim_clus_type LIKE e071k-mastertype VALUE 'CDAT',
249
      vim_tran_type LIKE e071k-mastertype VALUE 'TDAT',
250
      vim_deleted_key LIKE tadir-pgmid VALUE '(DL)',
251
      vim_unlockable_object LIKE e071k-mastertype VALUE '(UO)',
252
      vim_lockable_object LIKE e071k-mastertype VALUE '(LO)',
253
      vim_long_objname LIKE e071k-objname VALUE '(?TABKEY?)',
254
      vim_71k_name_length TYPE i VALUE '30',
255
      vim_transport_denied(1) TYPE c VALUE 'V',
256
      sortflag_with_existency LIKE e071k-sortflag VALUE '2',
257
      sortflag_without_existency LIKE e071k-sortflag VALUE '3',
258
      e071_objfunc LIKE e071-objfunc VALUE 'K',
259
      state_vect_prefix(7) TYPE c VALUE 'STATUS_',
260
      state_vect_prefix_length TYPE i VALUE '7',
261
      sap_cust_classes(2) TYPE c VALUE 'EG',    "tabclasses to check
262
      sap_only_classes(1) TYPE c VALUE 'S',                 "      -"-
263
      sap_cust_ctrl_classes(1) TYPE c VALUE 'E',            "      -"-
264
      no_transport_classes(1) TYPE c VALUE 'L',             "       -"-
265
      no_transport_log_classes(1) TYPE c VALUE 'W',"   -"-
266
      application_delivery_classes(1) TYPE c VALUE 'A',
267
      customizing_delivery_classes(3) TYPE c VALUE 'CEG',
268
      nbrd_texts_prefix(10) TYPE c VALUE 'SVIM_TEXT_',
269
      nbrd_texts_prefix_length TYPE i VALUE '10',
270
      master_fpool(8) TYPE c VALUE 'SAPLSVIM',
271
      vim_position_info_len TYPE i VALUE '30', "length of dynpro field
272
      vim_position_info_lg1 TYPE i VALUE '13', "length of 'Eintrag'
273
      vim_position_info_lg2 TYPE i VALUE '6',  "length of 'von'
274
      vim_position_info_lg3 TYPE i VALUE '10', "max length of entry nbr.
275
      vim_reset(1) TYPE c VALUE 'O',
276
      vim_replace(1) TYPE c VALUE 'R',
277
      vim_upgrade(1) TYPE c VALUE 'U',
278
      vim_direct_upgrade(1) TYPE c VALUE 'C',
279
      vim_undelete(1) TYPE c VALUE 'D',
280
      vim_delimit(1) TYPE c VALUE 'G',
281
      vim_delete(1) TYPE c VALUE 'L',
282
      vim_extedit(1) TYPE c VALUE 'E',
283
      vim_import(1) TYPE c VALUE 'I',
284
      vim_import_no_dialog TYPE c VALUE 'D',
285
      vim_import_with_dialog TYPE c VALUE 'H',
286
      vim_time_dep_dpl_modif_form(30) TYPE c
287
                                  VALUE 'TIME_DEPENDENT_DISPLAY_MODIF',
288
      vim_view(1) TYPE c VALUE 'V',    "OBJH-type for views
289
      vim_tabl(1) TYPE c VALUE 'S',    "OBJH-type for tables
290
      vim_clst(1) TYPE c VALUE 'C',    "OBJH-type for clusters
291
      vim_tran(1) TYPE c VALUE 'T',    "OBJH-type for transact.
292
      vim_logo(1) TYPE c VALUE 'L',    "OBJH-type for TLOGO-obj.
293
      vim_cust(4) TYPE c VALUE 'CUST', "OBJ-category CUST
294
      vim_syst(4) TYPE c VALUE 'SYST', "OBJ-category SYST
295
      vim_cust_syst(4) TYPE c VALUE 'CUSY',    "OBJ-category CUSY
296
      vim_appl(4) TYPE c VALUE 'APPL', "OBJ-category APPL
297
      vim_noact(1) TYPE c VALUE 'N',   "client state: no action
298
      vim_log(1)   TYPE c VALUE '1',   "client state: log chngs.
299
      vim_locked(1) TYPE c VALUE '2',  "client state: no chngs.
300
      vim_local_clnt(1) TYPE c VALUE '3',      "client state: no transp.
301
      vim_nocliindep_cust(1) TYPE c VALUE '1', "client state: ....
302
      vim_noreposichanges(1) TYPE c VALUE '2', "client state: ....
303
      vim_noreposiandcust(1) TYPE c VALUE '3', "client state: ....
304
      vim_frm_text_upd_flag(19) TYPE c VALUE 'SET_TXT_UPDATE_FLAG',
305
      vim_frm_fill_textkey(19) TYPE c VALUE 'FILL_TEXTTAB_KEY_UC',
306
*      vim_frm_fill_textkey(16) TYPE c VALUE 'FILL_TEXTTAB_KEY',
307
      vim_max_trsp_keylength TYPE i VALUE '120',
308
      vim_max_trsp_identical_key TYPE i VALUE '119',
309
      vim_char_inttypes(5) TYPE c VALUE 'CDNST', "char types for transp.
310
      vim_not_importable type objimp value '1'.
311
 
312
CONSTANTS:
313
* Type
314
  einstufig(1)       TYPE c VALUE 'E',
315
  zweistufig(1)      TYPE c VALUE 'Z',
316
* Action
317
  anzeigen(1)        TYPE c VALUE 'S',
318
  aendern(1)         TYPE c VALUE 'U',
319
  vim_ds_loeschen(1) TYPE c VALUE 'D',             "MF BCSet-DS loeschen
320
  hinzufuegen(1)     TYPE c VALUE 'A',
321
  kopieren(1)        TYPE c VALUE 'C',
322
  profil_hinzufuegen TYPE c VALUE 'R',                      "UFprofile
323
  transportieren(1)  TYPE c VALUE 'T',
324
  pruefen(1)         TYPE c VALUE 'P',
325
  zurueckholen(1)    TYPE c VALUE 'Z',
326
  task_add(1)        TYPE c VALUE 'E',
327
  task_del(1)        TYPE c VALUE 'F',
328
* Data
329
  gesamtdaten(1)     TYPE c VALUE 'G',
330
  auswahldaten(1)    TYPE c VALUE 'X',
331
* Mark
332
  markiert(1)        TYPE c VALUE 'M',
333
  nicht_markiert(1)  TYPE c VALUE ' ',
334
* Mode
335
  detail_bild(1)     TYPE c VALUE 'D',
336
  list_bild(1)       TYPE c VALUE 'L',
337
* Delete
338
  geloescht(1)       TYPE c VALUE 'D',
339
  nicht_geloescht(1) TYPE c VALUE ' ',
340
* selected
341
  by_field_contents(1) TYPE c VALUE 'I',
342
* time dependent objects: display mode
343
  expanded(1)          TYPE c VALUE ' ',
344
  collapsed(1)         TYPE c VALUE 'C',
345
  collapsed_displd(1)  TYPE c VALUE 'D',
346
* others
347
  update_geloescht(1) TYPE c VALUE 'Y',
348
  neuer_geloescht(1)  TYPE c VALUE 'X',
349
  dummy_geloescht(1)  TYPE c VALUE 'Z',
350
  neuer_eintrag(1)    TYPE c VALUE 'N',
351
  uebergehen(1)       TYPE c VALUE '*',
352
  leer(1)             TYPE c VALUE 'L',
353
  original(1)         TYPE c VALUE ' ',
354
  bcset_only(1)       TYPE c VALUE 'B'.      "Show only data from bcset
355
 
356
CONSTANTS: vim_scrform_domain LIKE dd03p-domname VALUE 'TDFORM',
357
           vim_delim_date_domain LIKE dd03p-domname VALUE 'DATUM',
358
           vim_begdate_dtel1 LIKE dd03p-rollname VALUE 'BEGDATUM',
359
           vim_begdate_dtel2 LIKE dd03p-rollname VALUE 'BEGDA',
360
           vim_begdate_dtel3 LIKE dd03p-rollname VALUE 'ISH_BEGDT',
361
           vim_begdate_dtel4 LIKE dd03p-rollname VALUE 'VIM_BEGDA',
362
           vim_enddate_dtel1 LIKE dd03p-rollname VALUE 'ENDDATUM',
363
           vim_enddate_dtel2 LIKE dd03p-rollname VALUE 'ENDDA',
364
           vim_enddate_dtel3 LIKE dd03p-rollname VALUE 'ISH_ENDDT',
365
           vim_enddate_dtel4 LIKE dd03p-rollname VALUE 'VIM_ENDDA',
366
           BEGIN OF vim_adrnbr_domains,
367
             dom1 LIKE dd03p-domname VALUE 'ADRNR',
368
             dom2 LIKE dd03p-domname VALUE 'CADRNR',
369
             dom3 LIKE dd03p-domname VALUE 'AD_ADDRNUM',
370
           END OF vim_adrnbr_domains,
371
           vim_addr_e071k_master TYPE sobj_name VALUE 'ADDRESS',
372
                                                "UF688403/2000
373
           vim_addr_e071k_master_46 TYPE sobj_name VALUE 'ADDRESS_4.6'.
374
"UF688403/2000
375
 
376
 
377
CONSTANTS: vim_sbscr_prog LIKE d020s-prog VALUE 'SAPLSVCM',
378
           vim_sbscr_dnum LIKE d020s-dnum VALUE '0101',
379
           vim_locked_in_corr LIKE vimstatus-corr_nbr VALUE 'LOCKED',
380
           vim_dummy_mainkey TYPE c VALUE 'K',
381
           vim_no_mkey_not_procsd(1) TYPE c VALUE 'X',
382
           vim_no_mkey_procsd_patt(2) TYPE c VALUE 'XY',
383
           vim_no_mkey_not_procsd_patt(2) TYPE c VALUE 'YX',
384
           vim_source_entry(1) TYPE c VALUE 'O',
385
           vim_clidep(1) TYPE x VALUE '02',
386
           vim_auth_initial_check(1) TYPE c VALUE 'I',
387
           vim_auth_switch_to_update_mode(1) TYPE c VALUE 'U',
388
           vim_auth_requested_check(1) TYPE c VALUE 'R'.
389
 
390
CONSTANTS: vim_tb_read_single_form(23) TYPE c
391
                                  VALUE 'TABLE_READ_SINGLE_ENTRY'.
392
DATA:      compl_formname(30) TYPE c VALUE 'COMPL_',
393
           corr_formname(30) TYPE c VALUE 'CORR_MAINT_',
394
           BEGIN OF vim_read_single_form,
395
            prefix(18) TYPE c VALUE 'READ_SINGLE_ENTRY_',
396
            viewname LIKE tvdir-tabname,
397
           END OF vim_read_single_form,
398
           BEGIN OF vim_read_single_form_40,
399
            prefix(12) TYPE c VALUE 'READ_SINGLE_',
400
            viewname LIKE tvdir-tabname,
401
           END OF vim_read_single_form_40.
402
 
403
* state fields
404
DATA: status TYPE state_vector,
405
* BEGIN OF STATUS,
406
*   TYPE(1)   TYPE C VALUE '2',        " E=Einstufig Z=Zweistufig
407
*   ACTION(1) TYPE C VALUE 'U',   " S=Anz., U=Änd., A=Hinzuf.,T=Tr
408
*   MODE(1)   TYPE C VALUE 'L',   " L=Liste, D=Detail
409
*   DATA(1)   TYPE C VALUE 'G',   " G=gesamt, X=Extract, D=Geloeschte
410
*   MARK(1)   TYPE C VALUE ' ',        " M=Markiert,  =Nicht Markiert
411
*   DELETE(1) TYPE C VALUE ' ',        " D=Gelöscht,  =Nicht Gelöscht
412
*   FILL1(1)  TYPE C VALUE ' ',        "filler, not used
413
*   FILL2(1)  TYPE C VALUE ' ',        "     - " -
414
* END OF STATUS,
415
 
416
  BEGIN OF title,
417
   action(1) TYPE c VALUE 'U',    " S=Anzeigen, U=Ändern, H=Hinzufügen
418
   mode(1)   TYPE c VALUE 'L',         " L=Liste, D=Detail
419
   data(1)   TYPE c VALUE 'G',    " G=Gesamt, X=Extrakt, D=Geloeschte
420
  END OF title.
421
 
422
* data containers and description
423
************************************************************************
424
DATA:  vim_for_alignment_only TYPE f,   "never remove!!!
425
       vim_view_wax TYPE tabl8000,
426
       vim_ctabkeylen TYPE sy-fleng.    "key length in characters
427
 
428
* other fields
429
DATA:
430
  vim_ale_keyspec_check(1) TYPE c,     "Flag: .......
431
  vim_ale_keyspec_objtab TYPE vim_ale_keyspec_objs OCCURS 1
432
                              WITH HEADER LINE,
433
  vim_delim_expa_excluded(1) TYPE c,   "Flag: .....
434
  vim_auth_event(1) TYPE c,
435
  vim_auth_action(1) TYPE c,
436
  vim_auth_rc LIKE sy-subrc, "0-ok, 4-show only, 8-no_authority->exit
437
  vim_auth_msgid LIKE sy-msgid,
438
  vim_auth_msgno LIKE sy-msgno,
439
  vim_auth_msgv1 LIKE sy-msgv1,
440
  vim_auth_msgv2 LIKE sy-msgv2,
441
  vim_auth_msgv3 LIKE sy-msgv3,
442
  vim_auth_msgv4 LIKE sy-msgv4,
443
  vim_no_warning_for_cliindep(1) TYPE c, "Flag: ......
444
  vim_begdate_is_ro(1) TYPE c, "Flag: nokey-datefield is readonly
445
  vim_addr_field_selection LIKE addr1_fsel-fisel, "for ADDR_DIALOG_PREPA
446
  vim_addr_keywords LIKE addr1_keyw,   "  - " -
447
  vim_addr_titlebar LIKE sy-title,     "  - " -
448
  vim_addr_chng_deflt_comm_types LIKE addr_comm,  "  - " -
449
  vim_addr_frame_text LIKE addr_frame, "  - " -
450
  vim_addr_excluded_functions LIKE vimexclfun     "  - " -
451
                              OCCURS 0 WITH HEADER LINE,
452
  vim_upgr_address_number LIKE addr1_sel-addrnumber,
453
  vim_skip_adr_maint TYPE xfeld,                            "UF120400
454
  vim_texttab_is_ro(1) TYPE c,
455
  vim_system_type(10) TYPE c,          "SAP/CUSTOMER
456
  vim_nbr_of_scrfrm_pointers TYPE i,
457
  vim_enq_s_u_rc LIKE sy-subrc,
458
  vim_addr_e071k_tab LIKE TABLE OF e071k INITIAL SIZE 0,
459
  vim_addr_e071_tab LIKE TABLE OF e071 INITIAL SIZE 0,
460
  vim_tsadrv LIKE tsadrv,              "Addresses: TSADRV-entry
461
  vim_addr_group LIKE tsadrv-addr_group,
462
  vim_addr_basetable LIKE dd03l-tabname,
463
  vim_addr_bastab_field LIKE dd03l-fieldname,
464
  vim_show_consistency_alert(1) TYPE c VALUE 'X',
465
  vim_import_testmode(1) TYPE c,
466
  vim_import_forcemode(1) TYPE c,
467
  vim_import_profile(1) TYPE c,        "Profilimport
468
  vim_profile_errorkey LIKE SCPRACPR-TABLEKEY,
469
  vim_abort_saving(1) TYPE c,          " 'X' -> Sichern abbrechen
470
  vim_import_no_message(1) TYPE c,
471
  vim_single_entry_function TYPE vimty_tcode,
472
  vim_single_entry_ins_key_input LIKE tvdir-flag,
473
  vim_import_mode_active(1) TYPE c,
474
  vim_last_logged_message TYPE vimty_message,
475
  vim_copy_call_level TYPE i,
476
  vim_nr_entries_to_copy TYPE i,       "SW 510129/1999
477
  vim_no_dialog(1) TYPE c,             "flag:......
478
  vim_modify_screen(1) TYPE c,         "Modul-lokales Flag
479
  vim_object LIKE vimdesc-viewname,
480
  vim_objfield LIKE vimnamtab-viewfield,
481
  vim_results_of_ext_mod LIKE vimmodres,
482
  vim_called_by_cluster(1) TYPE c,
483
  vim_calling_cluster TYPE vcl_name,
484
  vim_enqueue_range(1) TYPE c,
485
  vim_view_name LIKE vimdesc-viewname,
486
  replace_mode(1) TYPE c,
487
  vim_restore_mode(1) TYPE c,
488
  vim_external_mode(1) TYPE c,
489
  vim_extcopy_mode(1) TYPE c,
490
  vim_special_mode(1) TYPE c,          "O-reset,R-replace,U-upgrade
491
  vim_special_adjust_mode(1) TYPE c,
492
  vim_adjust_middle_level_mode(1) TYPE c,
493
  maint_mode TYPE c,
494
  update_flag(1) TYPE c VALUE ' ',
495
  adrnbr_roflag(1) TYPE c VALUE ' ',
496
  block_sw    TYPE c VALUE ' ',
497
  block_1     LIKE sy-tabix,
498
  block_2     LIKE sy-tabix,
499
  liste       LIKE d020s-dnum,
500
  detail      LIKE d020s-dnum,
501
  returncode  LIKE ocus-returncode,
502
  viewtitle   LIKE ocus-tabtitle,
503
  tablen      LIKE ocus-tablen,
504
  keylen      LIKE ocus-keylen,
505
  anzahl      TYPE i,
506
  answer(1)   TYPE c,
507
  neuer(1)    TYPE c VALUE 'N',
508
  ok_code     LIKE sy-ucomm,           "(4) type c,    SW, wg Controls
509
  function    LIKE sy-ucomm,           "(4) type c,
510
  relation(2) TYPE c VALUE 'EQ',
511
  counter LIKE sy-fdpos,
512
  mark_extract TYPE i,
513
  mark_total   TYPE i,
514
  l LIKE sy-tabix,
515
  o TYPE i,
516
  pos TYPE i,
517
  refcnt TYPE i,
518
  newcnt TYPE i,
519
  orgcnt TYPE i,
520
  last_view_info LIKE dd02v-tabname,
521
  vim_last_objh_view LIKE dd02v-tabname,
522
  vim_act_dynp_view LIKE dd02v-tabname,
523
  vim_ale_edit_lock(1) TYPE c,                              "flag:.....
524
  vim_ale_msgid LIKE sy-msgid,
525
  vim_ale_msgno LIKE sy-msgno,
526
  vim_ale_msgv1 LIKE sy-msgv1,
527
  vim_ale_msgv2 LIKE sy-msgv2,
528
  vim_ale_msgv3 LIKE sy-msgv3,
529
  vim_ale_msgv4 LIKE sy-msgv4,
530
  last_corr_number LIKE e070-trkorr,
531
  fill_extr_first_proc TYPE c,       "flag: Fill_extract first time proc
532
* F(30) TYPE C,  "4.0 name extension "max. Länge ABAP-Feldnamen: 30 Zchn
533
  f LIKE d021s-fnam,
534
* SUBSETID_RECEIVED TYPE C,          "flag: subset ID already received
535
  e071k_tab_modified TYPE c,                                "flag:
536
  sel_field_for_replace(30) TYPE c,    "field selected for replace
537
  sel_field_for_replace_l(30) TYPE c,  "field selected for replace long
538
* CORR_NBR LIKE TADIR-KORRNUM,       "current corr.nbr
539
  corr_nbr LIKE e070-trkorr,           "current corr.nbr
540
  master_type LIKE tadir-object VALUE 'TABU', "master object to transp.
541
  master_name LIKE tadir-obj_name,     "name of object to transport
542
  vim_client_state LIKE t000-cccoractiv, " state of client for transport
543
  get_corr_keytab(1) TYPE c,           "Flag: keytab is to read
544
  last_ext_modif_view LIKE tvdir-tabname,                   "flag:
545
  deta_mark_safe(1) TYPE c,
546
  ignored_entries_exist(1) TYPE c,                          "flag:
547
  corr_action(1) TYPE c,             "current action for UPDATE_CORR_KEY
548
  replace_texttable_field(1) TYPE c, "flag: replace function for textfld
549
  nbrd_texts_alr_read(1) TYPE c,     "flag: texts from SVIM already read
550
  svim_text_001(35) TYPE c,            "numbered text of SVIM
551
  svim_text_002(35) TYPE c,            "numbered text of SVIM
552
  svim_text_003(35) TYPE c,            "numbered text of SVIM
553
  svim_text_004(35) TYPE c,            "numbered text of SVIM
554
  svim_text_005(35) TYPE c,            "numbered text of SVIM
555
  svim_text_006(35) TYPE c,            "numbered text of SVIM
556
  svim_text_007(35) TYPE c,            "numbered text of SVIM
557
  svim_text_008(35) TYPE c,            "numbered text of SVIM
558
  svim_text_009(35) TYPE c,            "numbered text of SVIM
559
  svim_text_010(35) TYPE c,            "numbered text of SVIM
560
  svim_text_011(35) TYPE c,            "numbered text of SVIM
561
  svim_text_012(35) TYPE c,            "numbered text of SVIM
562
  svim_text_013(35) TYPE c,            "numbered text of SVIM
563
  svim_text_014(35) TYPE c,            "numbered text of SVIM
564
  svim_text_015(35) TYPE c,            "numbered text of SVIM
565
  svim_text_016(35) TYPE c,            "numbered text of SVIM
566
  svim_text_017(35) TYPE c,            "numbered text of SVIM
567
  svim_text_018(35) TYPE c,            "numbered text of SVIM
568
  svim_text_019(35) TYPE c,            "numbered text of SVIM
569
  svim_text_020(35) TYPE c,            "numbered text of SVIM
570
  svim_text_021(35) TYPE c,            "numbered text of SVIM
571
  svim_text_022(35) TYPE c,            "numbered text of SVIM
572
  svim_text_023(35) TYPE c,            "numbered text of SVIM
573
  svim_text_024(35) TYPE c,            "numbered text of SVIM
574
  svim_text_025(35) TYPE c,            "numbered text of SVIM
575
  svim_text_026(35) TYPE c,            "numbered text of SVIM
576
  svim_text_027(13) TYPE c,            "numbered text of SVIM
577
  svim_text_028(06) TYPE c,            "numbered text of SVIM
578
  svim_text_029(20) TYPE c,            "numbered text of SVIM
579
  svim_text_030(35) TYPE c,            "numbered text of SVIM
580
  svim_text_031(35) TYPE c,            "numbered text of SVIM
581
  svim_text_032(35) TYPE c,            "numbered text of SVIM
582
  svim_text_033(35) TYPE c,            "numbered text of SVIM
583
  svim_text_034(35) TYPE c,            "numbered text of SVIM
584
  svim_text_035(35) TYPE c,            "numbered text of SVIM
585
  svim_text_036(35) TYPE c,            "numbered text of SVIM
586
  svim_text_037(35) TYPE c,            "numbered text of SVIM
587
  svim_text_038(35) TYPE c,            "numbered text of SVIM
588
  svim_text_039(35) TYPE c,            "numbered text of SVIM
589
  svim_text_040(35) TYPE c,            "numbered text of SVIM
590
  svim_text_041(20) TYPE c,            "numbered text of SVIM
591
  svim_text_042(20) TYPE c,            "numbered text of SVIM
592
  svim_text_043(40) TYPE c,            "numbered text of SVIM
593
  svim_text_044(40) TYPE c,            "numbered text of SVIM
594
  svim_text_045(20) TYPE c,            "numbered text of SVIM
595
  svim_text_046(20) TYPE c,            "numbered text of SVIM
596
  svim_text_104(19) TYPE c,            "numbered text of SVIM
597
  svim_text_p01(20) TYPE c,            "numbered text of SVIM
598
  svim_text_p02(20) TYPE c,            "numbered text of SVIM
599
  svim_text_p03(20) TYPE c,            "numbered text of SVIM
600
  svim_text_prb(40) TYPE c,            "numbered text of SVIM
601
  svim_text_prc(40) TYPE c,            "numbered text of SVIM
602
  svim_text_pre(40) TYPE c,            "numbered text of SVIM
603
  svim_text_prf(70) TYPE c,            "numbered text of SVIM
604
  svim_text_prg(70) TYPE c,            "numbered text of SVIM
605
  svim_text_pri(40) TYPE c,            "numbered text of SVIM
606
  svim_text_prj(40) TYPE c,            "numbered text of SVIM
607
  vim_marked(1) TYPE c,                "mark-checkbox field
608
  vim_frame_field LIKE dd25v-ddtext, "name of frame (subset fields only)
609
  vim_position_info(42) TYPE c,        "field for 'entry x of y'
610
  vim_position_info_mask(42) TYPE c, "mask for field for 'entry x of y'
611
  vim_fpool_name LIKE trdir-name,
612
  vim_posi_push(25) TYPE c,          "push button to posit on list scrn
613
  temporal_delimitation_happened TYPE c,                    "flag: ....
614
  vim_mkey_after_exists(1) TYPE c,                          "flag: ....
615
  vim_no_mainkey_exists(1) TYPE c,                          "flag: ....
616
  nbr_of_added_dummy_entries TYPE i,   "for function NEWL: ...
617
  vim_next_screen LIKE tvdir-liste,    "next screen number
618
  vim_leave_screen(1) TYPE c,          "flag: leave screen necessary
619
  vim_prtfky_assigned(1) TYPE c,                            "flag...
620
* VIM_EXTRACT_MODIFIED(1) TYPE C,    "flag...
621
  vim_temp_delim_alr_checked(1) TYPE c,                     "flag...
622
  vim_ignore_collapsed_mainkeys(1) TYPE c,                  "flag...
623
  vim_corr_obj_viewname LIKE tvdir-tabname,
624
  vim_last_source_system LIKE tadir-srcsystem,
625
  vim_slct_functiontext(20) TYPE c,
626
  vim_comp_menue_text(20) TYPE c,
627
  vim_key_alr_checked(1) TYPE c,       "flag: .....
628
  vim_keyrange_alr_checked(1) TYPE c,  "flag: .....
629
  vim_prt_fky_flds_updated(1) TYPE c,  "flag: .....
630
  vim_exit_11_12_active(1) TYPE c,     "flag: .....
631
  BEGIN OF vim_default_rfc_dest,       "global vector for default
632
    viewname LIKE tvdir-tabname,       "RFC-destination
633
    rfcdest LIKE rfcdes-rfcdest,
634
  END OF vim_default_rfc_dest,
635
  BEGIN OF vim_default_upgr_clnt,      "global vector for default
636
    viewname LIKE tvdir-tabname,       "client for upgrade
637
    client LIKE sy-mandt,
638
  END OF vim_default_upgr_clnt,
639
  vim_title_name LIKE vimdesc-ddtext,
640
  vim_tabctrl_active(1) TYPE c,
641
  vim_tc_cols TYPE cxtab_column,
642
  vim_local_char1(1) TYPE c.           "Modul-lok. Hilfsvariable
643
 
644
* data for time-dependent routines (VCX)
645
FIELD-SYMBOLS: <key_date> TYPE ANY.
646
DATA: BEGIN OF d0001_field_tab OCCURS 10,
647
        begin TYPE d, end TYPE d, mark(1) TYPE c,
648
      END OF d0001_field_tab,
649
      d0001_cursor TYPE i,
650
      BEGIN OF d0001_status,
651
        type(1)   TYPE c,
652
        action(1) TYPE c,
653
        mode(1)   TYPE c,
654
        data(1)   TYPE c,
655
        mark(1)   TYPE c,
656
        delete(1) TYPE c,
657
        fill1(1)  TYPE c,              "filler, not used
658
        fill2(1)  TYPE c,                                   "     - " -
659
        spec_mode TYPE c,
660
      END OF d0001_status,
661
      d0001_input_flag(1) TYPE c,
662
      vim_mainkey TYPE vim_tabkey_c,   "field for mainkey (prt. forkey)
663
      current_date TYPE d,
664
      date_to_delimit TYPE d,
665
      date_to_posit TYPE d,
666
      vim_old_viewkey TYPE vim_tabkey_c,
667
      date_safe TYPE d,
668
      vim_old_st_selected(1) TYPE c,
669
      BEGIN OF vim_memory_id_1,  "memory-ID for vim_collapsed_entries
670
        viewname LIKE vimdesc-viewname,
671
        user     LIKE sy-uname,
672
      END OF vim_memory_id_1,
673
      BEGIN OF vim_memory_id_2,  "memory-ID for date subscreen data
674
        viewname LIKE vimdesc-viewname,
675
        user     LIKE sy-uname,
676
      END OF vim_memory_id_2,
677
      vim_date_mask(8) TYPE c VALUE '++++++++',
678
      vim_coll_mkeys_first(1) TYPE c,
679
      vim_merge_begin TYPE i,
680
      vim_merge_end TYPE i,
681
      vim_begdate_entered(1) TYPE c,
682
      BEGIN OF vim_begdate_name,
683
        tabname LIKE vimdesc-viewname,
684
        dash(1) TYPE c VALUE '-',
685
        fieldname LIKE vimnamtab-viewfield,
686
      END OF  vim_begdate_name,
687
      BEGIN OF vim_enddate_name,
688
        tabname LIKE vimdesc-viewname,
689
        dash(1) TYPE c VALUE '-',
690
        fieldname LIKE vimnamtab-viewfield,
691
      END OF  vim_enddate_name,
692
      vim_last_coll_mainkeys_ix TYPE i,
693
      vim_coll_mainkeys_beg_ix TYPE i VALUE 1,
694
      check_all_keyr_scnd_time(1) TYPE c, "Flag: .........
695
      vim_tdep_title(19) type c.
696
CONSTANTS: vim_init_date TYPE d VALUE '00000000'.
697
 
698
 
699
* data for navigation within internal tables
700
DATA:
701
  aktuell(10) TYPE n,
702
  maximal(10) TYPE n,
703
  index     LIKE sy-tabix,
704
  exind     LIKE sy-tabix,
705
  mandant   LIKE sy-mandt,
706
  curline   LIKE sy-tabix,             "Cursor-Position in Tab.
707
  curpage   LIKE sy-tabix VALUE 1,     "aktuelle Seite
708
  firstline LIKE sy-tabix VALUE 1,
709
  nextline  LIKE sy-tabix VALUE 1,
710
                            "Pos. erste Zeile der akt. Seite in Tab.
711
  anz_lines LIKE sy-tabix,             "Anzahl vorhandener Tab.-Zeilen
712
  anz_pages LIKE sy-tabix,             "Anzahl vorhandener Tab.-Seiten
713
  maxlines  LIKE sy-tabix,             "Anzahl vorhandener Tab.-Zeilen
714
  destpage  LIKE sy-tabix,  "Seite, auf die geblättert werden soll
715
  looplines LIKE sy-tabix.  "Anzahl Step-loop-Zeilen im Dynpro
716
 
717
* declarations for activating bc-sets                 "UF profile
718
TYPES: BEGIN OF vim_pr_tab_type,
719
                recnumber LIKE scprvals-recnumber,
720
                action TYPE char1,
721
                keys_fix,
722
                align TYPE f,
723
                keys(1024) TYPE x,
724
                txt_in_sy_langu_exsts TYPE xfeld,
725
                align2 TYPE f,
726
                textrecord TYPE vim_line_ul,
727
       END OF vim_pr_tab_type.
728
TYPES: BEGIN OF vim_pr_fields_type,
729
                recnumber LIKE scprvals-recnumber,
730
                keys_fix(1),
731
                fields TYPE vimty_fields_tab_type,
732
       END OF vim_pr_fields_type,
733
       vimsellist_type TYPE TABLE OF vimsellist,
734
       BEGIN OF  bc_key_type,   "HCG like e072k but tabkey 255
735
          trkorr like e071k-trkorr,
736
          pgmid like e071k-pgmid,
737
          object like e071k-object,
738
          objname like e071k-objname,
739
          as4pos like e071k-as4pos,
740
          mastertype like e071k-mastertype,
741
          mastername like e071k-mastername,
742
          viewname like e071k-viewname,
743
          objfunc like e071k-objfunc,
744
          bc_tabkey like scpractr-tabkey,
745
          sortflag like e071k-sortflag,
746
          flag like e071k-flag,
747
          lang like e071k-lang,
748
          activity like e071k-activity,
749
       END OF bc_key_type,
750
       bc_keytab_type type table of bc_key_type,
751
* For managing entries coming from bc-sets
752
       vim_bc_tab_logs TYPE TABLE OF scpractr,
753
       vim_bc_del_records TYPE TABLE OF scprreca,
754
       vim_bc_values_lang_type TYPE TABLE OF scpr_vall.
755
DATA:  vim_pr_fields TYPE TABLE OF vim_pr_fields_type INITIAL SIZE 15,
756
       vim_pr_fields_wa TYPE vim_pr_fields_type,
757
       vim_coming_from_img,            "'Y': coming from IMG, 'N': not
758
       vim_pr_tab TYPE TABLE OF vim_pr_tab_type,
759
       vim_profile_values TYPE TABLE OF scpr_vals INITIAL SIZE 50,
760
       vim_bc_entry_list TYPE vimty_bc_entry_list_ttype,
761
       vim_bc_entry_list_wa TYPE vimty_bc_entry_list_type,
762
       vim_pr_activating, vim_bc_keys_fix(3),
763
       vim_set_from_bc_pbo,
764
       vim_bc_chng_allowed TYPE xfeld, "fix bc-set values modifiable
765
       vim_pr_records TYPE i.    "number of activated profile records
766
DATA:  vim_actopts TYPE SCPRACTOPT, "Activation options at BC-SET import
767
       vim_bcset_id TYPE scpr_id.                        "Name of BC-SET
768
* field attributes in profiles
769
CONSTANTS: vim_profile_fix(3)    VALUE 'FIX',
770
           vim_profile_fixkey(3) VALUE 'FKY',
771
           vim_profile_use(3)    VALUE 'USE',
772
           vim_profile_key(3)    VALUE 'KEY',
773
           vim_profile_usekey(3) VALUE 'UKY',
774
* for flag KEYS_FIX
775
           vim_pr_error    VALUE 'E',                       "key error
776
           vim_pr_open     VALUE 'O',  "no key field fix
777
           vim_pr_some_fix VALUE 'S',                       "some fix
778
           vim_pr_all_fix  VALUE 'A',  "all key fields fix
779
* others
780
           vim_pr_into_view VALUE 'V',
781
           vim_profile_found VALUE 'X',
782
           vim_pr_imp_unchecked VALUE 'Y',
783
           vim_writing_bc_imp_log VALUE 'W'.
784
DATA:      vim_pr_stat_txt_me LIKE smp_dyntxt, "dynamic texts for dynpro
785
           vim_pr_stat_txt_ch LIKE smp_dyntxt,
786
           vim_pr_stat_txt_ta LIKE smp_dyntxt,
787
           vim_pr_stat_txt_or LIKE smp_dyntxt.
788
* internal tables
789
DATA: vim_adj_header LIKE vimdesc OCCURS 1,
790
      vim_adj_namtab LIKE vimnamtab OCCURS 0,
791
      vim_adj_dbasellist LIKE vimsellist OCCURS 0.
792
DATA: vim_locked_addresses LIKE SORTED TABLE OF adrc-addrnumber
793
                           WITH UNIQUE KEY table_line
794
                           INITIAL SIZE 10
795
                           WITH HEADER LINE.
796
 
797
DATA: BEGIN OF vim_addresses_to_save OCCURS 10,
798
        viewname LIKE tvdir-tabname,
799
        addrnumber LIKE adrc-addrnumber,
800
        handle LIKE addr1_dia-handle,
801
      END OF vim_addresses_to_save.
802
 
803
DATA: BEGIN OF textpool_tab OCCURS 30.                      "textpool
804
        INCLUDE STRUCTURE textpool.
805
DATA: END OF textpool_tab.
806
 
807
DATA: BEGIN OF exclude_tab OCCURS 10,  "fields to exclude from repl
808
        field LIKE d021s-fnam,         "functions (old version)
809
      END OF exclude_tab.
810
 
811
DATA: excl_rpl_tab TYPE vimexclfldtab  "fields to exclude from repl
812
        WITH HEADER LINE,
813
      excl_que_tab TYPE vimexclfldtab  "fields to exclude from query
814
        WITH HEADER LINE,
815
      excl_pos_tab TYPE vimexclfldtab  "fields to exclude from posit
816
        WITH HEADER LINE,
817
      vim_excl_xxx_tab_safe TYPE vimexclfldtabs "safe for all excl tabs
818
        WITH HEADER LINE.
819
 
820
DATA: BEGIN OF vim_corr_objtab OCCURS 10.      "transport objects on the
821
        INCLUDE STRUCTURE e071.        "vim-object level
822
DATA:   lockable(1) TYPE c,
823
      END OF vim_corr_objtab.
824
 
825
DATA: BEGIN OF vim_corr_entryobjtab OCCURS 10. "transport objects on the
826
        INCLUDE STRUCTURE ko200.       "vim-obj-entries level
827
DATA:   lockable(1) TYPE c,
828
      END OF vim_corr_entryobjtab.
829
 
830
DATA: BEGIN OF e071k_tab OCCURS 100.   "keys of changed entries
831
        INCLUDE STRUCTURE e071k.       "(used as parameter for VIEWPROC)
832
DATA: END OF e071k_tab.
833
 
834
DATA: vim_alv_fcat TYPE slis_t_fieldcat_alv, "ABAP List Viewer
835
*      vim_alv_excluding TYPE slis_t_extab,
836
*      vim_alv_special_groups TYPE slis_t_sp_group_alv,
837
*      vim_alv_sort TYPE slis_t_sortinfo_alv,
838
*      vim_alv_sel_hide TYPE slis_sel_hide_alv,
839
      vim_alv_events TYPE slis_t_event,
840
*      vim_alv_event_exit TYPE slis_t_event_exit,
841
      vim_alv_print TYPE slis_print_alv,
842
      vim_alv_layout TYPE slis_layout_alv,
843
      vim_alv_variant LIKE disvariant,
844
      vim_var_save, vim_var_default, vim_alv_value_length TYPE intlen,
845
      vim_alv_called_by TYPE char30,
846
      alv_value_tab TYPE TABLE OF tabl8000 initial size 500.
847
*DATA: BEGIN OF alv_value_tab OCCURS 1,
848
*      line(4096),
849
*      END OF alv_value_tab.
850
 
851
DATA: align_value_tab TYPE f,
852
      BEGIN OF value_tab OCCURS 1,     "Printing with ALV ==>
853
        line(4096),                                         "
854
      END OF value_tab.                                     "obsolete
855
 
856
DATA: BEGIN OF structure_table OCCURS 20.   "Printing with ALV ==>
857
        INCLUDE STRUCTURE dfies.                            "
858
DATA: END OF structure_table.                               "obsolete
859
 
860
DATA: vim_list_header TYPE slis_t_listheader. "List header for ALV-list
861
 
862
DATA: vim_delim_entries TYPE STANDARD TABLE  "indizes of delim. entries
863
        OF vim_delim_entr_tl WITH DEFAULT KEY INITIAL SIZE 10
864
        WITH HEADER LINE.
865
 
866
DATA: BEGIN OF vim_sval_tab OCCURS 1.  "fields for POPUP_GET_VALUES
867
        INCLUDE STRUCTURE sval.
868
DATA: END OF vim_sval_tab.
869
 
870
DATA: vim_collapsed_mainkeys TYPE STANDARD TABLE  "collapsed mainkeys
871
        OF vim_collapsed_mkeys_tl WITH DEFAULT KEY INITIAL SIZE 1
872
        WITH HEADER LINE.
873
 
874
DATA: vim_merged_entries TYPE STANDARD TABLE      "merged entries
875
        OF vim_merged_entr_tl WITH DEFAULT KEY INITIAL SIZE 1
876
        WITH HEADER LINE.
877
 
878
DATA: BEGIN OF vim_copied_indices OCCURS 10,
879
        ix LIKE sy-tabix, ex_ix LIKE sy-tabix, level TYPE i,
880
      END OF vim_copied_indices.
881
 
882
DATA: vim_wheretab LIKE vimwheretb OCCURS 10,
883
      imp_results TYPE slctr_tables_keys WITH HEADER LINE.
884
 
885
* Datencontainer für Texttabelle in mehreren Sprachen     "SW Texttransl
886
DATA: vim_texttab_container TYPE vim_tabdata_record OCCURS 0
887
      WITH HEADER LINE, "da 'read table .. assigning <fs>' nicht unterst
888
      vim_texttab_container_index LIKE sy-tabix,
889
      vim_d0100_fdescr_ini TYPE vimty_screen_fdescr_tab.
890
 
891
RANGES: mark_functions FOR sy-ucomm,   "fct. which need marked entries
892
        adrnbr_domain FOR sadr-adrnr,  "domains for address numbers
893
        exted_functions FOR sy-ucomm,  "fct. used by external edit
894
        vim_guid_domain FOR vimnamtab-domname, "domains for GUIDs
895
        vim_begda_types FOR dd03p-rollname,  "types for time-dependence
896
        vim_endda_types FOR dd03p-rollname.  "types for time-dependence
897
 
898
* constants for documentation 'User Instructions'
899
CONSTANTS: vim_docu_prog LIKE iwreferenc-programm VALUE 'SAPLSVIM',
900
           vim_docu_extension LIKE iwreferenc-spec_text
901
                   VALUE 'SM30 USER INTERFACE'.
902
 
903
* Konstanten für Dynpro
904
CONSTANTS: vim_template_dynpro TYPE x VALUE '20',  " Vorlagedynpro
905
           vim_standard_dynpro TYPE x VALUE 'C0'.  " Komprimierung ein
906
 
907
* Organisation criteria (linedependent authorisations)
908
DATA:  vim_oc_inst TYPE REF TO cl_viewfields_org_crit.
909
 
910
* Backup for DBA_SELLIST
911
DATA  vim_dba_sel_kept TYPE svorg_vimsellist_type.