Tuesday, January 18, 2011
The below sample programs are used to show PDF on the selection in the docking container. Basically calling program gets the called program output from spool , converts to PDF, display PDF on the selection screen using docking container.
REPORT ZTEST_NOTEPAD. DATA: lt_pdf TYPE TABLE OF tline, lt_data TYPE STANDARD TABLE OF x255. DATA: ls_pdf LIKE LINE OF lt_pdf. DATA: lv_url TYPE char255, lv_buffer TYPE string, lv_spool LIKE tsp01-rqident, lv_content TYPE xstring. DATA: lo_dialog_container TYPE REF TO cl_gui_dialogbox_container, lo_docking_container TYPE REF TO cl_gui_docking_container, lo_html TYPE REF TO cl_gui_html_viewer. FIELD-SYMBOLS: <xstr> TYPE x. PARAMETERS: p_check. AT SELECTION-SCREEN OUTPUT. * Run the report program, in this program you need to export the * spool id to memory. SUBMIT ZTEST_NOTEPAD1 TO SAP-SPOOL WITHOUT SPOOL DYNPRO DESTINATION space COVER TEXT 'Test program' NEW LIST IDENTIFICATION 'X' IMMEDIATELY space AND RETURN. * import spool number from memory IMPORT lv_spool = lv_spool FROM MEMORY ID 'ZTESTNOEPAD_0002_SPONO'. * Convert the spool request to PDF format. CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF' EXPORTING src_spoolid = lv_spool TABLES pdf = lt_pdf EXCEPTIONS err_no_abap_spooljob = 1 err_no_spooljob = 2 err_no_permission = 3 err_conv_not_possible = 4 err_bad_destdevice = 5 user_cancelled = 6 err_spoolerror = 7 err_temseerror = 8 err_btcjob_open_failed = 9 err_btcjob_submit_failed = 10 err_btcjob_close_failed = 11 OTHERS = 12. * convert pdf to xstring string LOOP AT lt_pdf INTO ls_pdf. ASSIGN ls_pdf TO <xstr> CASTING. CONCATENATE lv_content <xstr> INTO lv_content IN BYTE MODE. ENDLOOP. CREATE OBJECT lo_docking_container EXPORTING repid = sy-repid dynnr = sy-dynnr side = lo_docking_container->dock_at_right extension = 1200. CREATE OBJECT lo_html EXPORTING parent = lo_docking_container. * Convert xstring to binary table to pass to the LOAD_DATA method CALL FUNCTION 'SCMS_XSTRING_TO_BINARY' EXPORTING buffer = lv_content TABLES binary_tab = lt_data. * Load the HTML lo_html->load_data( EXPORTING type = 'application' subtype = 'pdf' IMPORTING assigned_url = lv_url CHANGING data_table = lt_data EXCEPTIONS dp_invalid_parameter = 1 dp_error_general = 2 cntl_error = 3 OTHERS = 4 ). * Show it lo_html->show_url( url = lv_url in_place = 'X' ).
REPORT ZTEST_NOTEPAD1. DATA: lv_spool LIKE tsp01-rqident. data: lv_value type i. START-OF-SELECTION . * Write the report. DO 20 TIMES. lv_value = sy-index * 10. WRITE:/ sy-index, at 20 lv_value. ENDDO. * Export this spool number to memory lv_spool = sy-spono. EXPORT lv_spool = lv_spool TO MEMORY ID 'ZTESTNOEPAD_0002_SPONO'.
Followers
Popular Posts
- ABAP - ALV Report example with steps
- ABAP - Step by step tutorial on Smart Forms - Template Node
- ABAP - Sending email with pdf attachment
- SAP Adobe Form - Steps to create simple ADOBE Form and calling it from ABAP Program
- SAP ABAP - CL_ABAP_CHAR_UTILITIES class usage
- ABAP - Multiple value selection from F4 help for SELECT-OPTIONS
- Execute ABAP Report using SUBMIT statement
- ABAP - Select all or Deselect all in ALV or Check box handling in ALV
- Web Dynpro ABAP ALV - ON_CLICK event
- ABAP - Dynamic WHERE clause
Thank you! Helped me a lot!!!
ReplyDelete