当前位置: 首页 > news >正文

SAP EXCEL模板下载导入

1、SMW0上载模板

(还可以实现excle合并操作(合并后使用的位置是合并的第一格的位置),字体大小,粗细,颜色等,需要自行探索)

*下载模板DATA: LO_OBJDATA     LIKE WWWDATATAB,LO_MIME        LIKE W3MIME,LC_FILENAME    TYPE STRING VALUE '工业企业产值计算',LC_FULLPATH    TYPE STRING  VALUE 'D:\',LC_PATH        TYPE  STRING VALUE 'D:\',LS_DESTINATION LIKE RLGRAP-FILENAME,LS_OBJNAM      TYPE STRING,LI_RC          LIKE SY-SUBRC,LS_ERRTXT      TYPE STRING.DATA: P_OBJID TYPE WWWDATATAB-OBJID,P_DEST  LIKE SAPB-SAPPFAD.P_OBJID = 'ZSD126E'. "此处为EXCEL模板名称"写入时行列计数DATA:LV_COL TYPE I,LV_ROW TYPE I."EXCEL名称修改LC_FILENAME = P_GJAHR && '年' && P_MONAT && '月-' && LC_FILENAME && P_BUKRS.CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOG "调用保存对话框EXPORTINGDEFAULT_EXTENSION    = 'XLS'DEFAULT_FILE_NAME    = LC_FILENAMECHANGINGFILENAME             = LC_FILENAMEPATH                 = LC_PATHFULLPATH             = LC_FULLPATHEXCEPTIONSCNTL_ERROR           = 1ERROR_NO_GUI         = 2NOT_SUPPORTED_BY_GUI = 3OTHERS               = 4.IF SY-SUBRC = 0.P_DEST = LC_FULLPATH.
*    concatenate p_objid ".XLS" into ls_objnam.CONDENSE LS_OBJNAM NO-GAPS.SELECT SINGLE RELID OBJID FROM WWWDATA INTO CORRESPONDING FIELDS OF LO_OBJDATAWHERE SRTF2 = 0 AND RELID = 'MI' AND OBJID = P_OBJID.*检查表wwwdata中是否存在所指定的模板文件IF SY-SUBRC NE 0 OR LO_OBJDATA-OBJID EQ SPACE."如果不存在,则给出错误提示CONCATENATE '模板文件' LS_OBJNAM '不存在' INTO LS_ERRTXT.MESSAGE LS_ERRTXT TYPE 'I'.ENDIF.LS_DESTINATION = P_DEST. "保存路径
*如果存在,调用DOWNLOAD_WEB_OBJECT 函数下载模板到路径下CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'EXPORTINGKEY         = LO_OBJDATADESTINATION = LS_DESTINATIONIMPORTINGRC          = LI_RC.IF LI_RC NE 0.CONCATENATE '模板文件:' LS_OBJNAM '下载失败' INTO LS_ERRTXT.MESSAGE LS_ERRTXT TYPE 'E'.ENDIF.
*    fname = ls_destination.ENDIF.CREATE OBJECT EXCEL 'EXCEL.APPLICATION'.CALL METHOD OF EXCEL 'WORKBOOKS' = BOOKS.CALL METHOD OF BOOKS 'OPEN'EXPORTING#1 = LC_FULLPATH.CALL METHOD OF EXCEL 'WORKSHEETS' = SHEET EXPORTING #1 = 1.CALL METHOD OF SHEET 'ACTIVATE'.CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = 1 #2 = 1.DATA(LIT_DIS) = IT_ITAB.READ TABLE LIT_DIS INTO DATA(LW_HEAD) INDEX 1.SELECTSINGLEBUTXTFROM T001INTO @DATA(LV_BUTXT)WHERE BUKRS = @P_BUKRS.LV_BUTXT  = '企业名称:' && LV_BUTXT.DATA LV_YEAR TYPE STRING."CONCATENATE P_GJAHR '年' P_MONAT '月' INTO LV_YEAR.LV_YEAR = P_GJAHR && '年' && P_MONAT && '月'."法人代码:144552023DATA LV_CODE TYPE STRING.CASE P_BUKRS.WHEN '1200'.LV_CODE = '法人代码:91330212786794630R'.WHEN '1100'.LV_CODE = '法人代码:913302001445520238'.WHEN '3000'.LV_CODE = '法人代码:91330212698210535Y'.ENDCASE."LV_CODE = '法人代码:144552023'.PERFORM FILL_CELL USING 2 1 LV_CODE ''."公司名称/年分写入PERFORM FILL_CELL USING 3 1 LV_BUTXT  ''.PERFORM FILL_CELL USING 3 7 LV_YEAR ''."根据模板位置写入LV_COL = 8.LOOP AT IT_ITAB INTO IS_ITAB.PERFORM FILL_CELL USING LV_COL 1 IS_ITAB-ZCPDL 'X'.PERFORM FILL_CELL USING LV_COL 2 IS_ITAB-MEINS 'X'.IF IS_ITAB-MEINS IS NOT INITIAL.IF IS_ITAB-ZYNP = 'Y'.PERFORM FILL_CELL USING LV_COL 3 '是' 'X'.ELSE.PERFORM FILL_CELL USING LV_COL 3 '否' 'X'.ENDIF.ELSE.PERFORM FILL_CELL USING LV_COL 3 '' 'X'.ENDIF.PERFORM FILL_CELL USING LV_COL 4 IS_ITAB-ZDJ 'X'.PERFORM FILL_CELL USING LV_COL 5 IS_ITAB-ZCPCL 'X'.PERFORM FILL_CELL USING LV_COL 6 IS_ITAB-ZJE 'X'.PERFORM FILL_CELL USING LV_COL 7 IS_ITAB-ZCPCLY 'X'.PERFORM FILL_CELL USING LV_COL 8 IS_ITAB-ZJEY 'X'.PERFORM FILL_CELL USING LV_COL 9 IS_ITAB-ZCPSL 'X'.PERFORM FILL_CELL USING LV_COL 10 IS_ITAB-ZJEXS 'X'.PERFORM FILL_CELL USING LV_COL 11 IS_ITAB-ZCPSLY 'X'.PERFORM FILL_CELL USING LV_COL 12 IS_ITAB-ZJEXSY 'X'.LV_COL =  LV_COL + 1.ENDLOOP."单位负责人/填表人PERFORM FILL_CELL USING LV_COL 1 TEXT-005 ''.PERFORM FILL_CELL USING LV_COL 4 TEXT-006 ''.SET PROPERTY OF EXCEL 'Visible' = 1.ENDFORM.
*&---------------------------------------------------------------------*
*& Form FILL_CELL
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*&      --> P_2
*&      --> P_9
*&      --> P_
*&---------------------------------------------------------------------*
FORM FILL_CELL  USING    P_IP_JP_VALP_BORD.CALL METHOD OF EXCEL 'CELLS' = CELLEXPORTING #1 = P_I #2 = P_J.SET PROPERTY OF CELL 'VALUE' = P_VAL..IF P_BORD = 'X'.GET PROPERTY OF CELL 'BORDERS'  = RANGE.SET PROPERTY OF RANGE  'WEIGHT'  = '2'.SET PROPERTY OF RANGE  'LINESTYLE'  = '1'.FREE OBJECT RANGE.ENDIF.ENDFORM.

http://www.dtcms.com/a/568872.html

相关文章:

  • 动态贝叶斯网络物联网应用方式
  • Oracle OCP认证:深度解析与实战指南
  • 帝国建设网站wordpress迅雷插件下载
  • HTTP 请求与数据交互全景指南:Request、GET、POST、JSON 及 curl
  • 如何进一步推动淘宝商品详情API的安全强化与生态协同创新?
  • Flutter | 基础环境配置和创建flutter项目
  • 58同城网站建设排名wordpress页面生成二维码
  • 怎么在子域名建立一个不同的网站怎么通过ip查看自己做的网站
  • UVa 11027 Palindromic Permutation
  • Python模板注入漏洞
  • 【SMTP】在线配置测试工具,如何配置接口?
  • 黑马JAVAWeb-01 Maven依赖管理-生命周期-单元测试
  • 第12讲:入门级状态管理方案 - Provider详解
  • 单调栈的“视线”魔法:统计「队列中可以看到的人数」
  • 【2025 SWPU-NSSCTF 秋季训练赛】WebFTP
  • 海淀教育互动平台网站建设哪些网站是wordpress
  • 网站开发定制宣传图片北京百度推广排名优化
  • ELK企业级日志分析系统学习
  • 360开源FG-CLIP2,给人工智能升级了精准的视觉解析系统
  • 关于dify中http节点下载文件时,文件名不为原始文件名问题解决
  • 期中考试成绩查询系统制作方法
  • Vue 用户管理系统(路由相关练习)
  • AI时代的新SEO玩法:使用SERP API构建排名追踪系统
  • 宝塔配置:IP文件配置,根据端口配置多个项目文件(不配置域名的情况)
  • 网站布局怎么设计哪个网站可以学做蛋糕
  • 深圳网站设计兴田德润信任高网站推广目标是什么
  • Java并发List实战:CopyOnWriteArrayList原理与ArrayList常见面试题
  • 【JavaEE】-- Cookie Session
  • --- Http和Https协议 ---
  • 无HTTP服务时的文件传输方法大全