zoukankan      html  css  js  c++  java
  • 如何用PDF预览smartform-[SSFCOMP_PDF_PREVIEW]

    可以通过函数 SSFCOMP_PDF_PREVIEW以pdf格式预览smartforms输出结果。

    例子代码:

    REPORT ztest_pdf_output.
    
    *&---------------------------------------------------------------------*
    *& Data Declaration
    *&---------------------------------------------------------------------*
    DATA: gv_formname TYPE tdsfname VALUE 'HRRCF_CS_APPLICANT',
          gv_fm_name  TYPE rs38l_fnam.
    DATA: gwa_ssfcompop TYPE ssfcompop,
          gwa_control   TYPE ssfctrlop.
    DATA: gv_devtype    TYPE rspoptype.
    DATA: gv_job_output TYPE ssfcrescl.
    DATA: gt_lines      TYPE TABLE OF tline.
    DATA: gv_size       TYPE i.
    *&---------------------------------------------------------------------*
    *& START-OF-SELECTION
    *&---------------------------------------------------------------------*
    START-OF-SELECTION.
    *Get the function module name using form name
      CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
        EXPORTING
          formname           = gv_formname
        IMPORTING
          fm_name            = gv_fm_name
        EXCEPTIONS
          no_form            = 1
          no_function_module = 2
          OTHERS             = 3.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    
    *Get Device Type
      CALL FUNCTION 'SSF_GET_DEVICE_TYPE'
        EXPORTING
          i_language             = sy-langu
        IMPORTING
          e_devtype              = gv_devtype
        EXCEPTIONS
          no_language            = 1
          language_not_installed = 2
          no_devtype_found       = 3
          system_error           = 4
          OTHERS                 = 5.
    
      gwa_ssfcompop-tdprinter = gv_devtype.
    *Suppress print dialog
      gwa_control-no_dialog = 'X'.
      gwa_control-getotf = 'X'.
    
    *Trigger the smartform
      CALL FUNCTION gv_fm_name
        EXPORTING
          control_parameters = gwa_control
          output_options     = gwa_ssfcompop
        IMPORTING
          job_output_info    = gv_job_output
        EXCEPTIONS
          formatting_error   = 1
          internal_error     = 2
          send_error         = 3
          user_canceled      = 4
          OTHERS             = 5.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    
      CALL FUNCTION 'SSFCOMP_PDF_PREVIEW'
        EXPORTING
          i_otf                    = gv_job_output-otfdata
        EXCEPTIONS
          convert_otf_to_pdf_error = 1
          cntl_error               = 2
          OTHERS                   = 3.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.

    运行结果:

    以上。

  • 相关阅读:
    TCP/IP 基础知识
    30 岁的码农人生 ——人生至暗时,你依然能窥见光明
    巨经典论文!推荐系统经典模型Wide & Deep
    带你领略拼多多2020校招笔试题,这样的难度你可以搞定吗?
    做业务、做技术和打杂,你的职场现状是哪种?
    内卷预警,本科生真的很不适合算法岗位吗?
    codeforces 1424J,为了过这题,我把祖传的C++都用上了!
    有了Git这个操作,我再也不怕代码混乱了!
    学会了这一招,距离Git大神不远了!
    好端端的数据结构,为什么叫它SB树呢?
  • 原文地址:https://www.cnblogs.com/datie/p/11429175.html
Copyright © 2011-2022 走看看