1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | |
28 | |
29 |
30 |
31 |
32 | FORM prog. |
33 |
34 | PERFORM prog_r3tr_incl. |
35 |
36 | PERFORM prog_r3tr_prog. |
37 | |
38 | ENDFORM. "prog |
39 | |
40 | |
41 |
42 |
43 |
44 | FORM prog_r3tr_incl. |
45 | |
46 | DATA: |
47 | lt_tabstrip TYPE it_tabstrip, |
48 | lt_html TYPE it_string, |
49 | lt_ti TYPE it_textinput, |
50 | lt_ti_box TYPE it_textinput, |
51 | ls_ti TYPE st_textinput, |
52 | l_masterlang TYPE masterlang, |
53 | l_filename TYPE string, |
54 | ls_trdir TYPE trdir, |
55 | l_laiso TYPE laiso, |
56 | l_sptxt TYPE sptxt, |
57 | l_name TYPE ad_namtext, |
58 | l_text TYPE as4text, |
59 | l_atext TYPE appltxt. |
60 | |
61 | FIELD-SYMBOLS: |
62 | <ls_ztadir> TYPE st_ztadir. |
63 | |
64 | PERFORM get_tabstrip |
65 | USING 'PROG_R3TR_INCL' space |
66 | CHANGING lt_tabstrip. |
67 | |
68 | LOOP AT gt_ztadir ASSIGNING <ls_ztadir> |
69 | WHERE pgmid = 'R3TR' |
70 | AND object = 'PROG' |
71 | AND subc = 'I' |
72 | AND downloaded = abap_false. |
73 | |
74 | CLEAR: |
75 | ls_trdir, |
76 | l_atext. |
77 | |
78 | REFRESH: |
79 | lt_html, |
80 | lt_ti, |
81 | lt_ti_box. |
82 | |
83 | SELECT SINGLE * FROM trdir INTO ls_trdir |
84 | WHERE name = <ls_ztadir>-progname. |
85 | IF sy-subrc <> 0. |
86 | <ls_ztadir>-subrc = sy-subrc. |
87 | CONTINUE. |
88 | ENDIF. |
89 | |
90 |
91 |
92 | CLEAR ls_ti. |
93 | ls_ti-name = txt_title. |
94 | ls_ti-value = <ls_ztadir>-descript. |
95 | ls_ti-value_double_length = abap_true. |
96 | ls_ti-input = abap_true. |
97 | APPEND ls_ti TO lt_ti. |
98 |
99 | CLEAR ls_ti. |
100 | ls_ti-name = txt_original_language. |
101 | l_masterlang = ls_trdir-rload. |
102 | IF l_masterlang IS INITIAL. |
103 | l_masterlang = <ls_ztadir>-masterlang. |
104 | ENDIF. |
105 | PERFORM get_spras |
106 | USING |
107 | l_masterlang |
108 | CHANGING |
109 | l_laiso |
110 | l_sptxt. |
111 | ls_ti-value = l_laiso. |
112 | ls_ti-description = l_sptxt. |
113 | ls_ti-input = abap_true. |
114 | APPEND ls_ti TO lt_ti. |
115 |
116 | CLEAR ls_ti. |
117 | ls_ti-space = abap_true. |
118 | APPEND ls_ti TO lt_ti. |
119 |
120 | CLEAR ls_ti. |
121 | ls_ti-name = txt_created. |
122 | PERFORM get_date |
123 | USING |
124 | ls_trdir-cdat |
125 | CHANGING |
126 | ls_ti-value. |
127 | ls_ti-value_ext = ls_trdir-cnam. |
128 | PERFORM get_user |
129 | USING |
130 | ls_trdir-cnam |
131 | CHANGING |
132 | l_name. |
133 | ls_ti-value_ext_text = l_name. |
134 | ls_ti-has_value_ext = abap_true. |
135 | ls_ti-input = abap_true. |
136 | APPEND ls_ti TO lt_ti. |
137 |
138 | CLEAR ls_ti. |
139 | ls_ti-name = txt_last_changed_by___1. |
140 | PERFORM get_date |
141 | USING |
142 | ls_trdir-udat |
143 | CHANGING |
144 | ls_ti-value. |
145 | ls_ti-value_ext = ls_trdir-unam. |
146 | PERFORM get_user |
147 | USING |
148 | ls_trdir-unam |
149 | CHANGING |
150 | l_name. |
151 | ls_ti-value_ext_text = l_name. |
152 | ls_ti-input = abap_true. |
153 | ls_ti-has_value_ext = abap_true. |
154 | APPEND ls_ti TO lt_ti. |
155 |
156 | CLEAR ls_ti. |
157 | ls_ti-name = txt_status. |
158 | ls_ti-value = txt_active___1. |
159 | APPEND ls_ti TO lt_ti. |
160 |
161 |
162 | CLEAR ls_ti. |
163 | ls_ti-name = txt_type___1. |
164 | PERFORM get_dom_value_text |
165 | USING |
166 | 'SUBC' |
167 | ls_trdir-subc |
168 | CHANGING |
169 | ls_ti-value. |
170 | ls_ti-input = abap_true. |
171 | APPEND ls_ti TO lt_ti_box. |
172 |
173 | CLEAR ls_ti. |
174 | ls_ti-name = txt_status. |
175 | PERFORM get_dom_value_text |
176 | USING |
177 | 'RSTAT' |
178 | ls_trdir-rstat |
179 | CHANGING |
180 | ls_ti-value. |
181 | ls_ti-input = abap_true. |
182 | APPEND ls_ti TO lt_ti_box. |
183 |
184 | CLEAR ls_ti. |
185 | ls_ti-name = txt_application. |
186 | SELECT SINGLE atext FROM taplt INTO l_atext |
187 | WHERE appl = ls_trdir-appl |
188 | AND sprsl = sy-langu. |
189 | ls_ti-value = l_atext. |
190 | ls_ti-input = abap_true. |
191 | APPEND ls_ti TO lt_ti_box. |
192 |
193 | CLEAR ls_ti. |
194 | ls_ti-name = txt_authorization_group. |
195 | ls_ti-value = ls_trdir-secu. |
196 | ls_ti-input = abap_true. |
197 | APPEND ls_ti TO lt_ti_box. |
198 |
199 | CLEAR ls_ti. |
200 | ls_ti-name = txt_package. |
201 | ls_ti-value = <ls_ztadir>-devclass. |
202 | PERFORM get_devclass |
203 | USING |
204 | <ls_ztadir>-devclass |
205 | CHANGING |
206 | l_text. |
207 | ls_ti-description = l_text. |
208 | ls_ti-input = abap_true. |
209 | APPEND ls_ti TO lt_ti_box. |
210 |
211 | CLEAR ls_ti. |
212 | ls_ti-space = abap_true. |
213 | APPEND ls_ti TO lt_ti_box. |
214 |
215 | CLEAR ls_ti. |
216 | ls_ti-name = txt_editor_lock. |
217 | ls_ti-value = ls_trdir-edtx. |
218 | ls_ti-flag = abap_true. |
219 | APPEND ls_ti TO lt_ti_box. |
220 | |
221 |
222 | PERFORM html_main_header |
223 | USING |
224 | tpt_fugr_incl |
225 | space "l_name_field |
226 | <ls_ztadir>-progname |
227 | txt_active___1 |
228 | space |
229 | space |
230 | 'makeDivSize(''SOURCECODE'');' |
231 | lt_tabstrip |
232 | gt_link |
233 | CHANGING |
234 | lt_html. |
235 |
236 | PERFORM html_add_textinput_subbox |
237 | USING |
238 | lt_ti |
239 | txt_attributes___2 |
240 | lt_ti_box |
241 | 'ATTRIBUTES' |
242 | abap_false |
243 | CHANGING |
244 | lt_html. |
245 |
246 | PERFORM add_report_sourcecode |
247 | USING |
248 | <ls_ztadir>-progname |
249 | <ls_ztadir>-progname |
250 | gc_extension_txt |
251 | abap_false |
252 | <ls_ztadir> |
253 | 'SOURCECODE' |
254 | abap_true |
255 | CHANGING |
256 | lt_html. |
257 | * |
258 | PERFORM html_main_footer |
259 | USING |
260 | lt_html. |
261 | |
262 | PERFORM download |
263 | USING |
264 | lt_html |
265 | <ls_ztadir>-pgmid |
266 | <ls_ztadir>-object |
267 | <ls_ztadir>-progname |
268 | gc_extension_htm |
269 | abap_true. |
270 | <ls_ztadir>-downloaded = abap_true. |
271 | ENDLOOP. |
272 | ENDFORM. "r3tr_incl |
273 | |
274 | |
275 |
276 |
277 |
278 | FORM prog_r3tr_prog. |
279 | |
280 | DATA: |
281 | lt_tabstrip TYPE it_tabstrip, |
282 | lt_html TYPE it_string, |
283 | ls_prog_inf TYPE rpy_prog, |
284 | lt_include_tab TYPE STANDARD TABLE OF rpy_repo, |
285 | lt_source_extended TYPE it_abaptxt255, |
286 | ls_source_extended TYPE st_abaptxt255, |
287 | lt_textelements TYPE STANDARD TABLE OF textpool, |
288 | ls_textelements_addons TYPE st_textpool_addons, |
289 | lt_text_symbols_addons TYPE it_textpool_addons, |
290 | lt_selection_texts TYPE STANDARD TABLE OF textpool, |
291 | lt_selection_texts_addons TYPE it_textpool_addons, |
292 | lt_text_symbols TYPE STANDARD TABLE OF textpool, |
293 | lt_list_titles TYPE it_textinput, |
294 | lt_row_titles TYPE it_textinput, |
295 | lt_doc TYPE it_string, |
296 | lt_ti TYPE it_textinput, |
297 | lt_ti_box TYPE it_textinput, |
298 | ls_ti TYPE st_textinput, |
299 | l_masterlang TYPE masterlang, |
300 | l_filename TYPE string, |
301 | lt_varid TYPE STANDARD TABLE OF varid, |
302 | lt_params TYPE STANDARD TABLE OF vanz, |
303 | lt_params_nonv TYPE STANDARD TABLE OF vanz, |
304 | lt_selop TYPE STANDARD TABLE OF vanz, |
305 | lt_selop_nonv TYPE STANDARD TABLE OF vanz, |
306 | lt_objects TYPE STANDARD TABLE OF vanz, |
307 | lt_valutab TYPE STANDARD TABLE OF rsparams, |
308 | lt_variant TYPE it_variant, |
309 | ls_variant TYPE st_variant, |
310 | ls_trdir TYPE trdir, |
311 | l_laiso TYPE laiso, |
312 | l_sptxt TYPE sptxt, |
313 | l_name TYPE ad_namtext, |
314 | l_text TYPE as4text, |
315 | l_atext TYPE appltxt, |
316 | l_text01 TYPE grouptext, |
317 | l_fu_param(30) TYPE c, |
318 | lt_source TYPE abapsource OCCURS 0. |
319 | |
320 | FIELD-SYMBOLS: |
321 | <ls_tabstrip> TYPE st_tabstrip, |
322 | <ls_ztadir> TYPE st_ztadir, |
323 | <ls_textelements> TYPE textpool, |
324 | <ls_varid> TYPE varid, |
325 | <ls_vanz> TYPE vanz, |
326 | <ls_valutab> TYPE rsparams, |
327 | <ls_source> LIKE LINE OF lt_source. |
328 | |
329 | PERFORM get_tabstrip |
330 | USING 'PROG_R3TR_PROG' space |
331 | CHANGING lt_tabstrip. |
332 | |
333 | SELECT SINGLE parameter FROM fupararef INTO l_fu_param |
334 | WHERE funcname = 'RPY_PROGRAM_READ' |
335 | AND r3state = 'A' |
336 | AND parameter = 'SOURCE_EXTENDED' |
337 | AND paramtype = 'T'. |
338 | |
339 | LOOP AT gt_ztadir ASSIGNING <ls_ztadir> |
340 | WHERE pgmid = 'R3TR' |
341 | AND object = 'PROG' |
342 | AND subc = '1' |
343 | AND downloaded = abap_false. |
344 | <ls_ztadir>-downloaded = abap_true. |
345 | |
346 | CLEAR: |
347 | ls_prog_inf, |
348 | ls_trdir, |
349 | ls_variant, |
350 | l_atext. |
351 | |
352 | REFRESH: |
353 | lt_html, |
354 | lt_include_tab, |
355 | lt_list_titles, |
356 | lt_objects, |
357 | lt_params, |
358 | lt_params_nonv, |
359 | lt_row_titles, |
360 | lt_selection_texts, |
361 | lt_selop, |
362 | lt_selop_nonv, |
363 | lt_source, |
364 | lt_source_extended, |
365 | lt_text_symbols, |
366 | lt_text_symbols_addons, |
367 | lt_textelements, |
368 | lt_ti, |
369 | lt_ti_box, |
370 | lt_valutab, |
371 | lt_variant, |
372 | lt_varid. |
373 | |
374 | IF l_fu_param = 'SOURCE_EXTENDED'. |
375 | CALL FUNCTION 'RPY_PROGRAM_READ' |
376 | EXPORTING |
377 | language = sy-langu |
378 | program_name = <ls_ztadir>-obj_name |
379 | with_includelist = abap_true |
380 | only_source = abap_false |
381 | only_texts = abap_false |
382 | read_latest_version = abap_true |
383 | with_lowercase = abap_true |
384 | IMPORTING |
385 | prog_inf = ls_prog_inf |
386 | TABLES |
387 | include_tab = lt_include_tab |
388 | source_extended = lt_source_extended |
389 | textelements = lt_textelements |
390 | EXCEPTIONS |
391 | OTHERS = 1. |
392 | IF sy-subrc <> 0. |
393 | <ls_ztadir>-subrc = sy-subrc. |
394 | CONTINUE. |
395 | ENDIF. |
396 | ELSE. |
397 | CALL FUNCTION 'RPY_PROGRAM_READ' |
398 | EXPORTING |
399 | language = sy-langu |
400 | program_name = <ls_ztadir>-obj_name |
401 | with_includelist = abap_true |
402 | only_source = abap_false |
403 | only_texts = abap_false |
404 | read_latest_version = abap_true |
405 | with_lowercase = abap_true |
406 | IMPORTING |
407 | prog_inf = ls_prog_inf |
408 | TABLES |
409 | include_tab = lt_include_tab |
410 | SOURCE = lt_source |
411 | textelements = lt_textelements |
412 | EXCEPTIONS |
413 | OTHERS = 1. |
414 | IF sy-subrc <> 0. |
415 | <ls_ztadir>-subrc = sy-subrc. |
416 | CONTINUE. |
417 | ENDIF. |
418 | LOOP AT lt_source ASSIGNING <ls_source>. |
419 | ls_source_extended = <ls_source>-line. |
420 | APPEND ls_source_extended TO lt_source_extended. |
421 | ENDLOOP. |
422 | ENDIF. |
423 | SELECT SINGLE * FROM trdir INTO ls_trdir |
424 | WHERE name = <ls_ztadir>-progname. |
425 |
426 | PERFORM get_docu |
427 | USING |
428 | 'RE' |
429 | <ls_ztadir>-obj_name |
430 | 'E' |
431 | CHANGING |
432 | lt_doc. |
433 |
434 | LOOP AT lt_textelements ASSIGNING <ls_textelements>. |
435 | CASE <ls_textelements>-id. |
436 | WHEN 'H'. |
437 | CLEAR ls_ti. |
438 | ls_ti-value = <ls_textelements>-entry. |
439 | ls_ti-input = abap_true. |
440 | ls_ti-no_name = abap_true. |
441 | APPEND ls_ti TO lt_row_titles. |
442 | WHEN 'I'. |
443 | CLEAR ls_textelements_addons. |
444 | APPEND <ls_textelements> TO lt_text_symbols. |
445 | ls_textelements_addons-strlen = strlen( |
446 | <ls_textelements>-entry |
447 | ). |
448 | APPEND ls_textelements_addons TO lt_text_symbols_addons. |
449 | WHEN 'S'. |
450 | CLEAR ls_textelements_addons. |
451 | IF <ls_textelements>-entry+0(1) = 'D'. |
452 | <ls_textelements>-entry+0(1) = space. |
453 | ls_textelements_addons-dict_ref = abap_true. |
454 | ENDIF. |
455 | CONDENSE <ls_textelements>-entry. |
456 | APPEND ls_textelements_addons |
457 | TO lt_selection_texts_addons. |
458 | APPEND <ls_textelements> TO lt_selection_texts. |
459 | WHEN 'T'. |
460 | CLEAR ls_ti. |
461 | ls_ti-value = <ls_textelements>-entry. |
462 | ls_ti-input = abap_true. |
463 | ls_ti-no_name = abap_true. |
464 | APPEND ls_ti TO lt_list_titles. |
465 | ENDCASE. |
466 | ENDLOOP. |
467 |
468 |
469 | CLEAR ls_ti. |
470 | ls_ti-name = txt_title. |
471 | ls_ti-value = <ls_ztadir>-descript. |
472 | ls_ti-value_double_length = abap_true. |
473 | ls_ti-input = abap_true. |
474 | APPEND ls_ti TO lt_ti. |
475 |
476 | CLEAR ls_ti. |
477 | ls_ti-name = txt_original_language. |
478 | l_masterlang = ls_prog_inf-masterlang. |
479 | IF l_masterlang IS INITIAL. |
480 | l_masterlang = <ls_ztadir>-masterlang. |
481 | ENDIF. |
482 | PERFORM get_spras |
483 | USING |
484 | l_masterlang |
485 | CHANGING |
486 | l_laiso |
487 | l_sptxt. |
488 | ls_ti-value = l_laiso. |
489 | ls_ti-description = l_sptxt. |
490 | ls_ti-input = abap_true. |
491 | APPEND ls_ti TO lt_ti. |
492 |
493 | CLEAR ls_ti. |
494 | ls_ti-space = abap_true. |
495 | APPEND ls_ti TO lt_ti. |
496 |
497 | CLEAR ls_ti. |
498 | ls_ti-name = txt_created. |
499 | PERFORM get_date |
500 | USING |
501 | ls_prog_inf-creat_date |
502 | CHANGING |
503 | ls_ti-value. |
504 | ls_ti-value_ext = ls_prog_inf-creat_user. |
505 | PERFORM get_user |
506 | USING |
507 | ls_prog_inf-creat_user |
508 | CHANGING |
509 | l_name. |
510 | ls_ti-value_ext_text = l_name. |
511 | ls_ti-has_value_ext = abap_true. |
512 | ls_ti-input = abap_true. |
513 | APPEND ls_ti TO lt_ti. |
514 |
515 | CLEAR ls_ti. |
516 | ls_ti-name = txt_last_changed_by___1. |
517 | PERFORM get_date |
518 | USING |
519 | ls_prog_inf-mod_date |
520 | CHANGING |
521 | ls_ti-value. |
522 | ls_ti-value_ext = ls_prog_inf-mod_user. |
523 | PERFORM get_user |
524 | USING |
525 | ls_prog_inf-mod_user |
526 | CHANGING |
527 | l_name. |
528 | ls_ti-value_ext_text = l_name. |
529 | ls_ti-input = abap_true. |
530 | ls_ti-has_value_ext = abap_true. |
531 | APPEND ls_ti TO lt_ti. |
532 |
533 | CLEAR ls_ti. |
534 | ls_ti-name = txt_status. |
535 | ls_ti-value = txt_active___1. |
536 | APPEND ls_ti TO lt_ti. |
537 |
538 |
539 | CLEAR ls_ti. |
540 | ls_ti-name = txt_type___1. |
541 | PERFORM get_dom_value_text |
542 | USING |
543 | 'SUBC' |
544 | ls_prog_inf-prog_type |
545 | CHANGING |
546 | ls_ti-value. |
547 | ls_ti-input = abap_true. |
548 | APPEND ls_ti TO lt_ti_box. |
549 |
550 | CLEAR ls_ti. |
551 | ls_ti-name = txt_status. |
552 | PERFORM get_dom_value_text |
553 | USING |
554 | 'RSTAT' |
555 | ls_prog_inf-status |
556 | CHANGING |
557 | ls_ti-value. |
558 | ls_ti-input = abap_true. |
559 | APPEND ls_ti TO lt_ti_box. |
560 |
561 | CLEAR ls_ti. |
562 | ls_ti-name = txt_application. |
563 | SELECT SINGLE atext FROM taplt INTO l_atext |
564 | WHERE appl = ls_prog_inf-appl |
565 | AND sprsl = sy-langu. |
566 | ls_ti-value = l_atext. |
567 | ls_ti-input = abap_true. |
568 | APPEND ls_ti TO lt_ti_box. |
569 |
570 | CLEAR ls_ti. |
571 | CLEAR l_text01. |
572 | ls_ti-name = txt_authorization_group. |
573 | ls_ti-value = ls_prog_inf-auth_group. |
574 | SELECT SINGLE text01 FROM tpgpt INTO l_text01 |
575 | WHERE p_group = ls_prog_inf-auth_group |
576 | AND langu = sy-langu. |
577 | ls_ti-description = l_text01. |
578 | ls_ti-input = abap_true. |
579 | APPEND ls_ti TO lt_ti_box. |
580 |
581 | CLEAR ls_ti. |
582 | ls_ti-name = txt_package. |
583 | ls_ti-value = <ls_ztadir>-devclass. |
584 | PERFORM get_devclass |
585 | USING |
586 | <ls_ztadir>-devclass |
587 | CHANGING |
588 | l_text. |
589 | ls_ti-description = l_text. |
590 | ls_ti-input = abap_true. |
591 | APPEND ls_ti TO lt_ti_box. |
592 |
593 | CLEAR ls_ti. |
594 | ls_ti-name = txt_logical_database. |
595 | ls_ti-value = ls_prog_inf-dbname. |
596 | ls_ti-input = abap_true. |
597 | APPEND ls_ti TO lt_ti_box. |
598 |
599 | CLEAR ls_ti. |
600 | ls_ti-name = txt_selection_screen_version. |
601 | ls_ti-value = ls_prog_inf-selscreen. |
602 | ls_ti-input = abap_true. |
603 | APPEND ls_ti TO lt_ti_box. |
604 |
605 | CLEAR ls_ti. |
606 | ls_ti-name = txt_editor_lock. |
607 | ls_ti-value = ls_trdir-edtx. |
608 | ls_ti-flag = abap_true. |
609 | ls_ti-flag_col = 1. |
610 | APPEND ls_ti TO lt_ti_box. |
611 |
612 | CLEAR ls_ti. |
613 | ls_ti-name = txt_fixed_point_arithmetic. |
614 | ls_ti-value = ls_trdir-fixpt. |
615 | ls_ti-flag = abap_true. |
616 | ls_ti-flag_col = 2. |
617 | APPEND ls_ti TO lt_ti_box. |
618 |
619 | CLEAR ls_ti. |
620 | ls_ti-name = txtt_unicode_checks_active. |
621 | ls_ti-value = ls_trdir-uccheck. |
622 | ls_ti-flag = abap_true. |
623 | ls_ti-flag_col = 1. |
624 | APPEND ls_ti TO lt_ti_box. |
625 |
626 | CLEAR ls_ti. |
627 | ls_ti-name = txt_start_using_variant. |
628 | ls_ti-value = ls_trdir-sset. |
629 | ls_ti-flag = abap_true. |
630 | ls_ti-flag_col = 2. |
631 | APPEND ls_ti TO lt_ti_box. |
632 |
633 | IF g_add_report_variants = abap_true. |
634 | SELECT * FROM varid INTO TABLE lt_varid |
635 | WHERE report = <ls_ztadir>-obj_name. |
636 | LOOP AT lt_varid ASSIGNING <ls_varid>. |
637 | READ TABLE gt_varid_broken TRANSPORTING NO FIELDS |
638 | WITH KEY report = <ls_varid>-report |
639 | vari = <ls_varid>-variant. |
640 | IF sy-subrc = 0. |
641 | CONTINUE. |
642 | ENDIF. |
643 | CALL FUNCTION 'RS_VARIANT_CONTENTS' |
644 | EXPORTING |
645 | report = <ls_varid>-report |
646 | variant = <ls_varid>-variant |
647 | TABLES |
648 | l_params = lt_params |
649 | l_params_nonv = lt_params_nonv |
650 | l_selop = lt_selop |
651 | l_selop_nonv = lt_selop_nonv |
652 | valutab = lt_valutab |
653 | OBJECTS = lt_objects |
654 | EXCEPTIONS |
655 | OTHERS = 1. |
656 | IF sy-subrc <> 0. |
657 | CONTINUE. |
658 | ENDIF. |
659 | LOOP AT lt_valutab ASSIGNING <ls_valutab>. |
660 | IF sy-tabix > 100. |
661 | "too many entries may cause a timeout, |
662 | "so better skip the rest... |
663 | EXIT. |
664 | ENDIF. |
665 | CLEAR ls_variant. |
666 | ls_variant-program = <ls_varid>-report. |
667 | ls_variant-variant = <ls_varid>-variant. |
668 | ls_variant-selname = <ls_valutab>-selname. |
669 | PERFORM get_gui_kind |
670 | USING <ls_valutab>-kind |
671 | CHANGING ls_variant-kind. |
672 | PERFORM get_gui_sign |
673 | USING <ls_valutab>-sign |
674 | CHANGING ls_variant-sign. |
675 | PERFORM get_gui_operator |
676 | USING <ls_valutab>-option |
677 | CHANGING ls_variant-option. |
678 | ls_variant-low = <ls_valutab>-low. |
679 | ls_variant-high = <ls_valutab>-high. |
680 | READ TABLE lt_params ASSIGNING <ls_vanz> |
681 | WITH KEY name = <ls_valutab>-selname. |
682 | IF sy-subrc <> 0 OR <ls_vanz>-text IS INITIAL. |
683 | READ TABLE lt_params_nonv ASSIGNING <ls_vanz> |
684 | WITH KEY name = <ls_valutab>-selname. |
685 | IF sy-subrc <> 0 OR <ls_vanz>-text IS INITIAL. |
686 | READ TABLE lt_selop ASSIGNING <ls_vanz> |
687 | WITH KEY name = <ls_valutab>-selname. |
688 | IF sy-subrc <> 0 OR <ls_vanz>-text IS INITIAL. |
689 | READ TABLE lt_selop_nonv ASSIGNING <ls_vanz> |
690 | WITH KEY name = <ls_valutab>-selname. |
691 | IF sy-subrc <> 0 OR <ls_vanz>-text IS INITIAL. |
692 | READ TABLE lt_objects ASSIGNING <ls_vanz> |
693 | WITH KEY name = <ls_valutab>-selname. |
694 | ENDIF. |
695 | ENDIF. |
696 | ENDIF. |
697 | ENDIF. |
698 | IF sy-subrc = 0. |
699 | ls_variant-text = <ls_vanz>-text. |
700 | ENDIF. |
701 | APPEND ls_variant TO lt_variant. |
702 | ENDLOOP. |
703 | ENDLOOP. |
704 | ENDIF. |
705 |
706 | LOOP AT lt_tabstrip ASSIGNING <ls_tabstrip>. |
707 | <ls_tabstrip>-empty = abap_false. |
708 | CASE <ls_tabstrip>-id. |
709 | WHEN 'LISTTITLE'. |
710 | IF lt_list_titles IS INITIAL |
711 | AND lt_row_titles IS INITIAL. |
712 | <ls_tabstrip>-empty = abap_true. |
713 | ENDIF. |
714 | WHEN 'SELECTIONTEXTS'. |
715 | IF lt_selection_texts IS INITIAL. |
716 | <ls_tabstrip>-empty = abap_true. |
717 | ENDIF. |
718 | WHEN 'TEXTSYMBOLS'. |
719 | IF lt_text_symbols IS INITIAL. |
720 | <ls_tabstrip>-empty = abap_true. |
721 | ENDIF. |
722 | WHEN 'DOC'. |
723 | IF lt_doc IS INITIAL. |
724 | <ls_tabstrip>-empty = abap_true. |
725 | ENDIF. |
726 | WHEN 'VARIANT'. |
727 | IF lt_variant IS INITIAL. |
728 | <ls_tabstrip>-empty = abap_true. |
729 | IF g_add_report_variants = abap_false. |
730 | <ls_tabstrip>-hidden = abap_true. |
731 | ENDIF. |
732 | ENDIF. |
733 | ENDCASE. |
734 | ENDLOOP. |
735 | |
736 |
737 | PERFORM html_main_header |
738 | USING |
739 | tpt_prog_repo |
740 | space "l_name_field |
741 | <ls_ztadir>-obj_name |
742 | txt_active___1 |
743 | space |
744 | space |
745 | 'makeDivSize(''SOURCECODE'');makeDivSize(''DOC'');' |
746 | lt_tabstrip |
747 | gt_link |
748 | CHANGING |
749 | lt_html. |
750 |
751 | IF NOT lt_list_titles IS INITIAL |
752 | OR NOT lt_row_titles IS INITIAL |
753 | OR g_empty_tab = gc_empty_tab_display. |
754 | PERFORM html_add_box_textinput2ver |
755 | USING |
756 | txt_list_header |
757 | lt_list_titles |
758 | txt_column_heading |
759 | lt_row_titles |
760 | 'LISTTITLE' |
761 | abap_false |
762 | CHANGING |
763 | lt_html. |
764 | ENDIF. |
765 |
766 | IF NOT lt_selection_texts IS INITIAL |
767 | OR g_empty_tab = gc_empty_tab_display. |
768 | PERFORM html_add_table |
769 | USING |
770 | 'PROG_SELEC' |
771 | lt_selection_texts |
772 | lt_selection_texts_addons |
773 | 'SELECTIONTEXTS' |
774 | abap_false |
775 | CHANGING |
776 | lt_html. |
777 | ENDIF. |
778 |
779 | IF NOT lt_text_symbols IS INITIAL |
780 | OR g_empty_tab = gc_empty_tab_display. |
781 | PERFORM html_add_table |
782 | USING |
783 | 'PROG_SYMBO' |
784 | lt_text_symbols |
785 | lt_text_symbols_addons |
786 | 'TEXTSYMBOLS' |
787 | abap_false |
788 | CHANGING |
789 | lt_html. |
790 | ENDIF. |
791 |
792 | IF g_add_report_variants = abap_true |
793 | AND ( NOT lt_variant IS INITIAL |
794 | OR g_empty_tab = gc_empty_tab_display ). |
795 | PERFORM html_add_table |
796 | USING |
797 | 'PROG_VARIA' |
798 | lt_variant |
799 | lt_variant |
800 | 'VARIANT' |
801 | abap_false |
802 | CHANGING |
803 | lt_html. |
804 | ENDIF. |
805 |
806 | IF NOT lt_doc IS INITIAL |
807 | OR g_empty_tab = gc_empty_tab_display. |
808 | PERFORM html_add_doc |
809 | USING |
810 | lt_doc |
811 | 'DOC' |
812 | abap_false |
813 | CHANGING |
814 | lt_html. |
815 | ENDIF. |
816 |
817 | PERFORM html_add_textinput_subbox |
818 | USING |
819 | lt_ti |
820 | txt_attributes___2 |
821 | lt_ti_box |
822 | 'ATTRIBUTES' |
823 | abap_false |
824 | CHANGING |
825 | lt_html. |
826 |
827 | PERFORM add_report_sourcecode |
828 | USING |
829 | <ls_ztadir>-obj_name |
830 | <ls_ztadir>-obj_name |
831 | gc_extension_txt |
832 | abap_true |
833 | <ls_ztadir> |
834 | 'SOURCECODE' |
835 | abap_true |
836 | CHANGING |
837 | lt_html. |
838 | * |
839 | PERFORM html_main_footer |
840 | USING |
841 | lt_html. |
842 | |
843 | PERFORM download |
844 | USING |
845 | lt_html |
846 | <ls_ztadir>-pgmid |
847 | <ls_ztadir>-object |
848 | <ls_ztadir>-obj_name |
849 | gc_extension_htm |
850 | abap_true. |
851 | ENDLOOP. |
852 | ENDFORM. "r3tr_prog |