首页 > 其他分享 >Demo:下载模板01 SMW0

Demo:下载模板01 SMW0

时间:2022-10-14 19:08:53浏览次数:40  
标签:01 LC Demo FILENAME SMW0 FILE TYPE 模板 OBJID

货铺QQ群号:834508274

进群统一修改群名片,例如BJ_ABAP_森林木。群内禁止发广告及其他一切无关链接,小程序等,进群看公告,谢谢配合
不修改昵称会被不定期踢除,谢谢配合



有批导需求的时候,一般是首先下载模板,然后再上载。

下面模板的方式,通常使用SMW0先上载,再在程序中下载使用。

 

 

Excel模板如下:

Demo:下载模板01 SMW0_上载

首先:SMW0

Demo:下载模板01 SMW0_上载_02

Demo:下载模板01 SMW0_小程序_03

Demo:下载模板01 SMW0_微信_04

Demo:下载模板01 SMW0_上载_05


Demo程序:

Demo:下载模板01 SMW0_微信_06


*& Report  ZLM_DOWM_TMP01
*&
*&---------------------------------------------------------------------*
*&
*& 下载模板demo sap干货铺 sapliumeng
*&---------------------------------------------------------------------*
REPORT ZLM_DOWM_TMP01.

TABLES:SSCRFIELDS.
TYPE-POOLS:SLIS,ISOC.

DATA:LV_OBJID TYPE WWWDATATAB-OBJID VALUE 'ZLM_SPFLI'. "SWMO 上载模板ID


SELECTION-SCREEN:FUNCTION KEY 1.

PARAMETERS :P_FILE LIKE RLGRAP-FILENAME .

INITIALIZATION.

SSCRFIELDS-FUNCTXT_01 = '下载模板'.

AT SELECTION-SCREEN.
CASE SSCRFIELDS-UCOMM.
WHEN 'FC01'.
PERFORM FRM_DOWN_TMPLT USING LV_OBJID.
WHEN 'ONLI'.

WHEN OTHERS.
ENDCASE.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
PERFORM FRM_FILE_OPEN CHANGING P_FILE.


FORM FRM_DOWN_TMPLT USING P_OBJID TYPE WWWDATATAB-OBJID.
DATA: P_FILE TYPE IBIPPARMS-PATH.
DATA: LO_OBJDATA LIKE WWWDATATAB,
LC_FILENAME TYPE STRING , "
LC_FULLPATH TYPE STRING VALUE 'C:\',
LC_PATH TYPE STRING VALUE 'C:\',
LS_DESTINATION LIKE RLGRAP-FILENAME,
LI_RC LIKE SY-SUBRC.

* DATA: p_objid TYPE wwwdatatab-objid .
DATA: P_DEST LIKE SAPB-SAPPFAD.

CONCATENATE P_OBJID '上载模板.xlsx' INTO LC_FILENAME.

"down
CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOG "
EXPORTING
DEFAULT_EXTENSION = 'XLS'
DEFAULT_FILE_NAME = LC_FILENAME
CHANGING
FILENAME = LC_FILENAME
PATH = LC_PATH
FULLPATH = LC_FULLPATH "full path
EXCEPTIONS
CNTL_ERROR = 1
ERROR_NO_GUI = 2
NOT_SUPPORTED_BY_GUI = 3
OTHERS = 4.

IF LC_FULLPATH = ''.
RETURN.
ENDIF.

LS_DESTINATION = LC_FULLPATH.

"check
SELECT SINGLE RELID OBJID
FROM WWWDATA INTO CORRESPONDING FIELDS OF LO_OBJDATA
WHERE SRTF2 = 0
AND RELID = 'MI'
AND OBJID = P_OBJID.

IF SY-SUBRC NE 0 OR LO_OBJDATA-OBJID EQ SPACE.
MESSAGE '模板下载失败' TYPE 'E'.
ENDIF.

"down
CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'
EXPORTING
KEY = LO_OBJDATA
DESTINATION = LS_DESTINATION
IMPORTING
RC = LI_RC.
IF LI_RC NE 0.
MESSAGE TEXT-E11 TYPE 'E'.
ENDIF.

ENDFORM. " FRM_DOWN_TMPLT


FORM FRM_FILE_OPEN CHANGING P_FILE.

DATA: LV_FILE TYPE STRING.

CLEAR LV_FILE.
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
MASK = ',Excel file,*.xls;*.xlsx;'
TITLE = '选择文件'(100)
IMPORTING
FILENAME = LV_FILE
EXCEPTIONS
INV_WINSYS = 1
NO_BATCH = 2
SELECTION_CANCEL = 3
SELECTION_ERROR = 4
OTHERS = 5.
IF SY-SUBRC <> 0 AND SY-SUBRC <> 3.
MESSAGE '选择文件出错!'(007) TYPE 'E'.
ENDIF.
P_FILE = LV_FILE.
ENDFORM. " FRM_FILE_OPEN

如果上载过程中报错:

Demo:下载模板01 SMW0_微信_07

这个解决办法很简单,只需要维护下就行了


Demo:下载模板01 SMW0_微信_08


Demo:下载模板01 SMW0_微信_09

Demo:下载模板01 SMW0_上载_10


demo 代码可以copy过去,略作调整即可使用,比从头写快的多。


标签:01,LC,Demo,FILENAME,SMW0,FILE,TYPE,模板,OBJID
From: https://blog.51cto.com/u_15680210/5757796

相关文章

  • WDA DEMO 03: 根据选择条件查询并显示
    下面开始干货:事先声明下,本人没参加过培训,也没看过完整的标准教程,所以一直都是野路子,土八路。所以文章中不足以及不正确的地方请大家帮忙指正。SE80新建。然后新建一个Attri......
  • 增强Demo 03 销售订单屏幕增强后BAPI增强
    干货:前面两篇文章分别介绍了销售订单抬头和行项目上屏幕增强的案例。屏幕上增加了俩字段,那BAPI创建修改的时候怎么处理?怎么把增强字段值写进去?使用BAPI的EXTENSIONIN参数可......
  • 增强Demo 02 销售订单屏幕增强-item 增强
    干货:首先append一个字段然后激活。之前写Header屏幕增强的时候,其实已经提到过增强的方法了。Header使用的BADI,当然还可以使用对应的itemBADI来实现这个需求。这里介绍下......
  • VF01 开票增强
    ​VF01VF04开票的时候,可以调整价格条件的金额。增强位置:RV61AFZBuserexit_xkomv_bewerten_end修改开票过程中销售凭证和会计凭证金额XKOMV[]TKOMV[]如果这里调整不了,可以......
  • DEMO: 获取交货单未开票数量
    VL03N查看交货单交货数量为5,单位是CAR查看已经开票凭证流:直接看表VBFA开票84单位EA冲销76单位EA已开84-76=8EA而咱们看交货单的时候,交货单单位CAR.单位转换:交货......
  • VA01 销售订单 审批 状态 增强
    需求:在使用事务代码VA01创建销售订单时,在点击保存按钮后,根据销售组织(VBAK-VKORG)及订单类型(VBAK-AUART)读取自定义表,如果自定义表有值且“自动审批”标识为“X”则自动将该订......
  • Demo:cl_salv_table ALV 弹出框
    效果图:代码REPORTZLM_001.DATA:go_alvTYPEREFTOcl_salv_table,go_funlstTYPEREFTOcl_salv_functions_list.DATA:gt_dataTYPESTANDARDTABLEOFspfli......
  • DEMO:REUSE_ALV_GRID_DISPLAY 复选框 刷新 grid_title
    最近写了几个FunctionALV复选框+刷新的报表,为了方便复制粘贴到其他项目修改,做了个demo。效果选中,删除结构和status代码REPORTzalv_demoDATA:lt_alv_showLIKET......
  • VM501ML振弦读数模块
    VM501ML是稳控科技系列化振弦测读模块的小体积版本,外形尺寸不足一枚硬币大小,高集成度、高测量精度,UART和I2C数字通讯接口、频率转模拟信号输出以及智能频率获取SFC、......
  • windows server2012服务器下PHPstudy配置ssl证书(https配置)
    准备: 阿里云云服务器阿里云购买的域名(已备案、已解析phpstudy:php7.1.13nts+Apachessl证书申请(我用的是阿里云上申请的证书,好像是免费用一年吧)步骤: 申请证书(这个很多方式,......