【ABAP系列】SAP ABAP下载带密码的Excel文件

2023-11-12

公众号: SAP Technical
本文作者: matinal
 

 

前言部分

大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。

正文部分

REPORT ztest.
 
DATA : BEGIN OF li_makt OCCURS 0,
         matnr TYPE matnr,
         maktx TYPE maktx,
       END OF li_makt.
 
DATA: BEGIN OF li_head OCCURS 0,
        field(30) TYPE c,
      END OF li_head.
 
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE TEXT-002.
PARAMETERS:
  p_file TYPE rlgrap-filename OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b2.
 
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
  PERFORM browse_file CHANGING p_file.
 
START-OF-SELECTION.
 
  REFRESH li_head.
 
  DEFINE mc_head.
    li_head-field = &1.
    APPEND li_head.
  END-OF-DEFINITION.
 
  SELECT matnr maktx INTO TABLE li_makt FROM makt UP TO 20 ROWS WHERE spras = sy-langu .
 
  mc_head : 'Material No', 'Material Description'.
 
  CALL FUNCTION 'EXCEL_OLE_STANDARD_DAT'
    EXPORTING
      file_name                 = p_file
      create_pivot              = 0
      data_sheet_name           = 'Data Material'
      pivot_sheet_name          = ' '
      password                  = 'plazapp'
      password_option           = 1
    TABLES
      data_tab                  = li_makt
      fieldnames                = li_head
    EXCEPTIONS
      file_not_exist            = 1
      filename_expected         = 2
      communication_error       = 3
      ole_object_method_error   = 4
      ole_object_property_error = 5
      invalid_filename          = 6
      invalid_pivot_fields      = 7
      download_problem          = 8
      OTHERS                    = 9.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
 
 
FORM browse_file CHANGING p_file LIKE rlgrap-filename.
  DATA: filetab   TYPE filetable,
        rc        TYPE i,
        lv_offset TYPE i.
 
  FREE filetab.
  CALL METHOD cl_gui_frontend_services=>file_open_dialog
    EXPORTING
      window_title            = 'Choose File'
      default_extension       = '*.*'
      default_filename        = 'c:\*.xls'
    CHANGING
      file_table              = filetab
      rc                      = rc
    EXCEPTIONS
      file_open_dialog_failed = 1
      cntl_error              = 2
      error_no_gui            = 3
      OTHERS                  = 4.
  IF sy-subrc = 0.
    READ TABLE filetab INTO p_file INDEX 1.
  ENDIF.
ENDFORM. " browse_file

 

转载于:https://www.cnblogs.com/SAPmatinal/p/11271149.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【ABAP系列】SAP ABAP下载带密码的Excel文件 的相关文章

  • HDR dump失败解决办法

    运行脚本 进HDR拍照 一般在 sdcard Android data com oplus camera files spdebug hdrdump 目录下 可以生成dump 若没有生成dump 清除相机缓存 重新运行脚本 重启手机即可 脚
  • Apache Solr入门教程(初学者之旅)

    Apache Solr入门教程 初学者之旅 写在前面 本文涉及solr入门的各方面 建议边思考边实践 相信能帮助你对solr有个清晰全面的了解并能简单实用 在Apache Solr初学者教程的这个例子中 我们将讨论有关如何安装最新版本的Ap
  • 0-1分布的方差和期望

    最后欢迎大家访问我的个人网站 1024s
  • CentOS7.4下C++开源日志库easyloggingpp的使用

    CentOS7 4下C 开源日志库easyloggingpp的使用 一 简单示例 二 多线程支持 Linux后台开发过程中经常需要日志记录一些运行信息 网上找到easyloggingpp只需要包含头文件和实现文件即可 使用很方便 现整理如下
  • vue:结合elementUI设计网站登录页

    这次主要是记录三个重点 1 组件间通信的方法 其一 2 脚手架搭建的vue工程的组件调用 3 elementUI 的轮播图与模态框的设计 先看效果图 简单的就做了这四个页面 总共四个组件实现这些效果 这个小网站需要的组件也挺多的 当然不止这
  • Pandas——读/写不同数据源的数据

    Pandas 读 写不同数据源的数据 一 读 写数据库数据 1 SQLAlchemy连接MySQL数据库 2 使用 read sql query read sql table read sql 函数 读 取数据库数据 3 使用 to sql
  • 全面总结机器学习超参数调优(附代码)

    公众号 尤而小屋作者 Peter编辑 Peter 大家好 我是Peter 本文的主题 机器学习建模的超参数调优 开局一张图 文章很长 建议直接收藏 一 什么是机器学习超参数 机器学习超参数是在开始学习过程之前设置值的参数 而不是通过训练得到
  • 导入elementui组件库

    1 在终端输入 vue add element 回车 选择按需加载 输入yes 回车 选择zh CN 回车 2 在plugins里面有一个element js 我们先去elementui官网看到快速上手 就可以看到按需引入 复制代码放到el
  • 搭建 react+ts+less+Antd 项目

    搭建 react ts less Antd 项目 一 文章目录 搭建 react ts less Antd 项目 一 前言 项目搭建流程 1 新建项目 2 暴露配置 3 支持less 4 支持ts 前言 项目搭建流程 1 新建项目 npx
  • 谷粒商城-分布式高级篇[商城业务-检索服务]

    谷粒商城 分布式基础篇 环境准备 谷粒商城 分布式基础 业务编写 谷粒商城 分布式高级篇 业务编写 持续更新 谷粒商城 分布式高级篇 ElasticSearch 谷粒商城 分布式高级篇 分布式锁与缓存 项目托管于gitee 一 商城业务 检
  • ckplayer html播放本地,vue中使用ckplayer播放器

    请选择视频源 获取视频中 请稍等 export default name components props sourceUrl type String default height type String default 550px dat
  • python统计套利_基于python的统计套利实战(二)之协整检验

    协整关系协整 Cointegration 理论是恩格尔 Engle 和格兰杰 Granger 在1978年提出的 平稳性是进行时间序列分析的一个很重要的前提 很多模型都是基于平稳下进行的 而现实中 很多时间序列都是非平稳的 所以协整是从分析
  • 智能优化算法改进-K-means聚类种群初始化附Matlab代码

    目录 0引言 一 K means聚类原理 二 K Means聚类算法步骤 三 K Means聚类原理图 编辑 四 K means聚类改进智能优化算法种群初始化效果图 4 1 初始种群数据图 4 2 K means聚类结果图 4 2 1 根据
  • VM虚拟机下 Ubuntu下摄像头显示安装

    安装 可通过PPA进行安装 ffmpeg sudo add apt repository ppa kirillshkrogalev ffmpeg next sudo apt get update sudo apt get install f
  • 浅谈Router和Route

    router 和 route 是在前端框架中用于管理和处理路由的两个关键概念 这两者之间的关系可以通过具体的代码来解释 在本示例中 我将使用 React 和 React Router 来说明它们之间的关系 Router 路由器 Router
  • DataPipeline丨DataOps的技术考量

    作者 DataPipeline CEO 陈诚 从 数据的资产负债表与现状 到 DataOps理念与设计原则 直至 DataOps的组织架构与挑战 我们对于DataOps的讨论已经进行了三周 不难发现 在此期间 我们探讨的话题始终围绕在上层建
  • SSR、SSE、SST、R2

    在MATLAB中 计算回归问题的拟合优度 或判定系数 可用 B BINT R RINT STATS regress Y X 指令 其中的STATS的第一个返回值即为R2 R2约接近于1 拟合效果越好 SSR为回归平方和 SSE为残差平方和
  • React官网入门项目井字棋游戏

    React官网里有很详细的教程 也有在线沙盒 但是写的东一榔头西一棒槌的 不适合新手入门 所以我还是建议大家可以先去看看阮一峰大神的React博客或者某硅谷的网课 这个网课讲的很详细 甚至详细到有些啰嗦 我大概是用20天把网课看完 然后再看
  • 进程信号(信号产生、注册、注销、处理),信号阻塞和volatile关键字

    文章目录 进程信号 信号产生 信号在进程中注册 信号在进程的注销 信号的处理 信号的处理方式 信号阻塞 如何阻塞一个信号 int sigprocmask int how sigset t set sigset t old int sigem
  • 从零开始制作Linux

    提到制作Linux 大家都能想到如雷贯耳 大名鼎鼎的Linux from scratch 但Linux from scratch的复杂性不是普通人能轻易掌握的 对于初学者来说 任何步骤出现不一致 会让初学者遇到挫拆 攻破LFS的信心越来越低

随机推荐