標籤

4GL (1) 人才發展 (10) 人物 (3) 太陽能 (4) 心理 (3) 心靈 (10) 文學 (31) 生活常識 (14) 光學 (1) 名句 (10) 即時通訊軟體 (2) 奇狐 (2) 音樂 (2) 產業 (5) 郭語錄 (3) 無聊 (3) 統計 (4) 新聞 (1) 經濟學 (1) 經營管理 (42) 解析度 (1) 遊戲 (5) 電學 (1) 網管 (10) 廣告 (1) 數學 (1) 機率 (1) 雜趣 (1) 證券 (4) 證券期貨 (1) ABAP (15) AD (1) agentflow (4) AJAX (1) Android (1) AnyChart (1) Apache (14) BASIS (4) BDL (1) C# (1) Church (1) CIE (1) CO (38) Converter (1) cron (1) CSS (23) DMS (1) DVD (1) Eclipse (1) English (1) excel (5) Exchange (4) Failover (1) FI (57) File Transfer (1) Firefox (2) FM (2) fourjs (1) gladiatus (1) google (1) Google Maps API (2) grep (1) Grub (1) HR (2) html (23) HTS (8) IE (1) IE 8 (1) IIS (1) IMAP (3) Internet Explorer (1) java (3) JavaScript (22) jQuery (6) JSON (1) K3b (1) LED (3) Linux (112) Linux Mint (4) Load Balance (1) Microsoft (2) MIS (2) MM (51) MSSQL (1) MySQL (27) Network (1) NFS (1) Office (1) Oracle (125) Outlook (3) PDF (6) Perl (59) PHP (33) PL/SQL (1) PL/SQL Developer (1) PM (3) Postfix (2) postfwd (1) PostgreSQL (1) PP (50) python (1) QM (1) Red Hat (4) Reporting Service (28) ruby (11) SAP (234) scp (1) SD (16) sed (1) Selenium-WebDriver (5) shell (5) SQL (4) SQL server (8) SQuirreL SQL Client (1) SSH (2) SWOT (3) Symantec (2) T-SQL (7) Tera Term (2) tip (1) tiptop (22) Tomcat (6) Trouble Shooting (1) Tuning (5) Ubuntu (33) ufw (1) utf-8 (1) VIM (11) Virtual Machine (2) vnc (3) Web Service (2) wget (1) Windows (19) Windows (1) WM (6) youtube (1) yum (2)

2013年1月28日 星期一

SAP : Convert ABAP List to PDF and display in PDF format

http://an-sap-consultant.blogspot.tw/2010/12/sap-convert-abap-list-to-pdf-and.html

REPORT  zrich_0001.

DATA: lv_spool LIKE tsp01-rqident.

DATA: lt_pdf TYPE TABLE OF tline.
DATA: ls_pdf LIKE LINE OF lt_pdf.

DATA: lv_url TYPE char255.
DATA: lv_buffer TYPE string.
DATA: lv_content  TYPE xstring.

DATA: lt_data TYPE STANDARD TABLE OF x255.

DATA: lo_dialog_container TYPE REF TO cl_gui_dialogbox_container.
DATA: lo_docking_container TYPE REF TO cl_gui_docking_container.
DATA: lo_html    TYPE REF TO cl_gui_html_viewer.

FIELD-SYMBOLS  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 zrich_0002 TO SAP-SPOOL
       WITHOUT SPOOL DYNPRO
               DESTINATION space
               COVER TEXT ' Your Report Title'
               NEW LIST IDENTIFICATION 'X'
               IMMEDIATELY space
               AND RETURN.

* import spool number from memory
  IMPORT lv_spool = lv_spool FROM MEMORY ID 'ZRICH_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  CASTING.
    CONCATENATE lv_content  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  ZRICH_0002
        line-count 65
        LINE-SIZE  80.

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 'ZRICH_0002_SPONO'.

沒有留言:

張貼留言