如何使用|如何使用 ABAP 代码发送带有 PDF 附件的电子邮件

零基础 ABAP 学习教程系列文章的目录

  • ABAP 标准培训教程 BC400 学习笔记之一:ABAP 服务器的架构和一个典型的 ABAP 程序结构介绍
  • ABAP 标准培训教程 BC400 学习笔记之二:Cross-client 和 Client-specific 的区别
  • ABAP 标准培训教程 BC400 学习笔记之三:ABAP 编程语言的特性和基本构成要素
  • ABAP 标准培训教程 BC400 学习笔记之四:ABAP 编程语言的数据类型
  • ABAP 标准培训教程 BC400 学习笔记之五:ABAP 编程语言的变量,常量和字面量,以及文本符号
ABAP 基础知识
  • 通过实际的例子,介绍 SAP ABAP 里的 Repository Information System 的使用技巧
  • ABAP function module 的使用
  • ABAP subroutine 的定义和使用
  • ABAP 中的变量和常量
  • ABAP 编程语言中的系统字段(System Fields)
  • 什么是 ABAP Field Symbol
  • ABAP 引用类型介绍
  • 最浅显易懂的 SAPGUI 里 ABAP 调试器的使用方法介绍
  • 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (上)
  • 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (下)
  • 用 ABAP 读取本地文本文件内容
  • 26 行 ABAP 代码使用 HTTP_GET 函数下载百度网站的首页数据
  • ABAP 如何解析 JSON 数据
  • 如何从本地文件里拷贝某个 ABAP 类到 SAP 系统
  • 面向对象的 ABAP 编程初探 - 什么是类,实例,和 Public 方法
  • SAP ABAP 报表的用户输入功能
  • 使用 ABAP 事物码 SM59 创建 Destination 来读取外网的数据
  • 通过一个具体的例子,讲解 SAP BDC 技术的使用步骤
  • 从解读 BDC 自动生成的代码谈起,讲解 SAPGUI 的程序组成部分
  • 如何查询 SAPGUI 屏幕上某个字段对应的数据库表存储
  • 如何使用事物码 SAT 查找某个 SAPGUI 屏幕字段对应的后台存储数据库表的名称
  • 一步步创建包含自定义 Screen 的 ABAP 程序的详细步骤
  • SAP ABAP 字符串变量容易疏忽和混淆的一些知识点
  • SAP ABAP 处理 Excel 的标准函数 TEXT_CONVERT_XLS_TO_SAP 介绍
  • 授人以渔-在 SAP MM 物料显示界面上看到一个字段,如何查找哪张数据库表的哪个字段进行的存储
  • SAP ABAP 系统进行数据库表查询的几种常用方法
  • 如何让 ABAP 服务器能够响应通过浏览器发起的自定义 HTTP 请求
  • 一个 15 年 SAP ABAP 开发人员分享的 SAPGUI 一些个性化设置和实用小技巧
  • 如何使用 saplink 安装其他网站上提供的 ABAP 程序
  • ABAP 报表中如何给报表的输入参数增添 F4 Value Help
  • ABAP 报表中如何以二进制方式上传本地文件
  • ABAP 里文件操作涉及到中文字符集的问题和解决方案
  • 如何对 ABAP 数据库表通过 ABAP 代码进行更新和删除操作
  • 如何让 ABAP 报表在后台作业的模式下运行
  • 如何使用 ABAP 代码解析 XML 文件
  • 如何使用 ABAP 代码发送邮件到指定邮箱
  • 如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
  • 更多文章正在写作中
Office 专题
  • 用 ABAP 新建本地 Excel 文件并写入数据
  • 如何使用 ABAP 创建包含不同字体大小的 Word 文档
  • 更多文章正在写作中
ALV 开发专题
  • 27 行代码开发一个最简单的 SAP ALV 报表
  • 48 行代码给 ABAP ALV 报表的数据行增添颜色效果
  • 77 行代码实现ABAP ALV 中的双击事件处理
  • SAP ABAP ALV 层次顺序表如何使用双表头(Multiple Headers)进行数据输出
  • 如何在 SAP ABAP ALV 报表里以交通灯的方式显示某一列的值
更多文章正在写作中
在学习本步骤之前,请大家务必先掌握本教程之前这些步骤的学习,以获得必要的前置知识:
  • 一步步创建包含自定义 Screen 的 ABAP 程序的详细步骤
  • ABAP 报表中如何以二进制方式上传本地文件
本步骤我们在前一步骤的基础上更进一步,为我们的 ABAP 程序,支持上传 PDF 文件,作为邮件附件的方式进行发送。
【如何使用|如何使用 ABAP 代码发送带有 PDF 附件的电子邮件】如何使用 ABAP 代码发送邮件到指定邮箱
下图是前一步骤我们开发的 ABAP 发送邮件的程序外观:
如何使用|如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
文章图片

我们再来看看按照本步骤实现之后,达到的效果。同前一个步骤相比,现在的程序外观多了三个元素:
(1) 一个 Upload File 按钮,点击之后,可以选择一个本地的 PDF 文件,作为邮件的附件一起发送。
(2) File Size:一旦我们通过 Upload File 选择本地文件进行上传之后,这个字段会显示上传文件的字节大小。
(3) Local File:显示我们选中的本地文件的绝对路径。
如何使用|如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
文章图片

我们点击 Upload File 按钮后,弹出一个文件选择对话框,选择一个本地 PDF 文件:
如何使用|如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
文章图片

此时 File Size 和 Local Path 字段会自动显示这个 PDF 文件的字节数,以及本地绝对路径。
如何使用|如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
文章图片

此时点击 Send Mail,即可发送邮件。
很快,我的 outlook 收件箱里,就出现一封新的带有一个名为 attachment.pdf 附件的邮件:
如何使用|如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
文章图片

我们可以通过事物码 SOST 来查看通过 ABAP 服务器发送的邮件内容:
如何使用|如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
文章图片

点击 Send Request 菜单的 Display Document 菜单项,可以在 ABAP 服务器上查看发送的邮件内容和附件信息:
如何使用|如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
文章图片

如何使用|如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
文章图片

下面是这个 ABAP 报表的详细实现步骤和源代码。

    推荐阅读