zoukankan      html  css  js  c++  java
  • ABAP 选择屏幕上的导入模板下载按钮

    1.通过SMW0将模板导入至SAP.

    输入包名,点击新建,输入对象名称,我一般用tcode命名,然后点击导入,选择路径就可以了

     

     

    2.将SMW0的文件下载到本地,供用户参考。

    “template download 按钮定义

    DATA: functxt TYPE smp_dyntxt.
    TABLES: sscrfields.

    SELECTION-SCREEN: FUNCTION KEY 1."download template.

    INITIALIZATION.
      functxt-icon_id       = icon_xxl.
      functxt-icon_text     = text-002.
      sscrfields-functxt_01 = functxt.

     

    AT SELECTION-SCREEN.
      CASE sscrfields-ucomm.
        WHEN 'FC01'.
          PERFORM frm_template_down.
      ENDCASE

    FORM frm_template_down .
      DATA: lv_filename    TYPE string,
             lv_path        TYPE string,
             lv_fullpath    TYPE string,
             lv_user_action TYPE i,
             lv_destination TYPE rlgrap-filename,
             ls_objdata     TYPE wwwdatatab,
             lv_objid       TYPE wwwdatatab-objid,
             lv_rc          TYPE sy-subrc.
      lv_filename = 'ZSD1035 Template Download'.
      CONCATENATE sy-datum '-' sy-uzeit '-' lv_filename INTO lv_filename.
    *CALL METHOD cl_gui_frontend_services=>file_save_dialog
    *  EXPORTING
    **    window_title              =
    *    default_extension         = 'XLSX'
    *    default_file_name         = LV_FILENAME
    **    with_encoding             =
    **    file_filter               =
    *    initial_directory         = LV_PATH
    **    prompt_on_overwrite       = 'X'
    *  CHANGING
    *    filename                  = LV_FILENAME
    *    path                      = LV_PATH
    *    fullpath                  = LV_FULLPATH
    *    user_action               = LV_USER_ACTION
    **    file_encoding             =
    *  EXCEPTIONS
    *    cntl_error                = 1
    *    error_no_gui              = 2
    *    not_supported_by_gui      = 3
    *    invalid_default_file_name = 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.
      IF lv_user_action <> 9.
        SELECT SINGLE relid objid
          FROM wwwdata
          INTO CORRESPONDING FIELDS OF  ls_objdata
          WHERE srtf2 = 0
          AND   objid = 'ZSD1035'
          AND   relid = 'MI'.
        IF sy-subrc = 0.
          CLEAR lv_rc.
          CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'
            EXPORTING
              key               = ls_objdata
              destination       = lv_destination
            IMPORTING
              rc                = lv_rc
    *    CHANGING
    *      TEMP              =
                    .
          IF lv_rc EQ 0 .
            MESSAGE  'Template download sucessful.' TYPE 'S'.
          ELSE.
            MESSAGE  'The template is not exit.' TYPE 'S' DISPLAY LIKE 'E'.
          ENDIF.
        ELSE.
          MESSAGE  'The template is not exit.' TYPE 'S' DISPLAY LIKE 'E'.
        ENDIF.
      ENDIF.
    ENDFORM.                    " FRM_TEMPLATE_DOWN.

    闫默涵
  • 相关阅读:
    什么是用户画像——从零开始搭建实时用户画像(一)
    一站式Kafka平台解决方案——KafkaCenter
    Druid 0.17入门(4)—— 数据查询方式大全
    流媒体与实时计算,Netflix公司Druid应用实践
    解读银行卡支付背后的原理
    求求你了,不要再自己实现这些逻辑了,开源工具类不香吗?
    编程坑太多,Map 集合怎么也有这么多坑?一不小心又踩了好几个!
    设计数据库 ER 图太麻烦?不妨试试这两款工具,自动生成数据库 ER 图!!!
    一口气带你踩完五个 List 的大坑,真的是处处坑啊!
    轻轻一扫,立刻扣款,付款码背后的原理你不想知道吗?|原创
  • 原文地址:https://www.cnblogs.com/yanmohan/p/14549006.html
Copyright © 2011-2022 走看看