前文:

SAP Adobe Form 教程一 简单示例

SAP Adobe Form 教程二 表

SAP Adobe Form 教程三 日期,时间,floating field

SAP Adobe Form 教程四 动态隐藏和显示字段

原文标题:SAP Adobe Interactive Form Tutorial. Part V. Images, Graphics and Logo in Adobe Forms

本文链接:https://www.cnblogs.com/hhelibeb/p/15512978.html

前提:需要通过SE78上传图片。

上传完成后,请检查确认图片已经在系统中存在,

创建interface。

事务代码SFP,

在interface中添加一个IV_LOGO参数,类型为XSTRING,

创建form,

拖放参数IV_LOGO到Context,

在Context的YRAM_ADOBE_FORM5右击,并且选择create->graphic.

下一步很重要:把Graphic type从Graphic Reference改为Graphic content。

输入字段名IV_LOGO,选择MIME TYPE为‘IMAGE/BMP’.

保存,并前往Layout的Data View标签页。拖放Graphic到layout。

可以根据需要拉伸或压缩图片。可能需要删除图片标题,即默认图像字段文本。

出于演示目的,我在图片下方添加了另一个文本元素。

检查、保存和激活。

带有图形和表单界面的Layout已经完成。 注意到了吗,我们的Layout中有两个元素。图片字段和图形内容。 相当于变量名和实际内容。

调用adobe form的驱动程序,

  1 *&---------------------------------------------------------------------*
2 *======================================================================*
3 * YRAM_ADOBE_FORM_PROGRAM5 *
4 *======================================================================*
5 * Project : SAP Adobe Forms Tutorial *
6 * Author : Ramanjula Naidu DARURU (www.SAPYard.com) *
7 * Description : Printing a logo in the adobe form *
8 *======================================================================*
9 REPORT yram_adobe_form_program5.
10
11 *======================================================================*
12 * Selection Screen
13 *======================================================================*
14 PARAMETERS : p_logo TYPE rstxt-tdname.
15 *======================================================================*
16 * Data Objects
17 *======================================================================*
18
19 DATA: gv_fm_name TYPE rs38l_fnam, " FM Name
20 gs_fp_docparams TYPE sfpdocparams,
21 gs_fp_outputparams TYPE sfpoutputparams,
22 gv_name TYPE tdobname,
23 gv_logo TYPE xstring ,
24 gv_bmp TYPE xstring.
25 *======================================================================*
26 * Constants
27 *======================================================================*
28 CONSTANTS : gc_btype TYPE tdbtype VALUE 'BCOL',
29 gc_id TYPE tdidgr VALUE 'BMAP',
30 gc_object TYPE tdobjectgr VALUE 'GRAPHICS',
31 gv_form_name TYPE fpname VALUE 'YRAM_ADOBE_FORM5'.
32
33 *======================================================================*
34 * START of Calling the Form
35 *======================================================================*
36 *&---------------------------------------------------------------------*
37 **&&~~ Form Processing: Call Form - Open
38 *
39 CALL FUNCTION 'FP_JOB_OPEN'
40 CHANGING
41 ie_outputparams = gs_fp_outputparams
42 EXCEPTIONS
43 cancel = 1
44 usage_error = 2
45 system_error = 3
46 internal_error = 4
47 OTHERS = 5.
48 IF sy-subrc <> 0.
49 " Suitable Error Handling
50 ENDIF.
51 *&---------------------------------------------------------------------*
52 **&&~~ Get the Function module name based on Form Name
53 *
54 CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'
55 EXPORTING
56 i_name = gv_form_name
57 IMPORTING
58 e_funcname = gv_fm_name.
59 IF sy-subrc <> 0.
60 " Suitable Error Handling
61 ENDIF.
62
63 * Passing the logo name
64 gv_name = p_logo.
65
66 * Get the image/logo graphic information
67 CALL METHOD cl_ssf_xsf_utilities=>get_bds_graphic_as_bmp
68 EXPORTING
69 p_object = gc_object " GRAPHICS
70 p_name = gv_name " Name of the Logo
71 p_id = gc_id " BMAP
72 p_btype = gc_btype " BCOL for color, 'BMON' for Black & White
73 RECEIVING
74 p_bmp = gv_bmp
75 EXCEPTIONS
76 not_found = 1
77 internal_error = 2
78 OTHERS = 3.
79
80 gv_logo = gv_bmp.
81
82 *&---------------------------------------------------------------------*
83 **&&~~ Take the FM name by execuing the form - by using Pattern-
84 **&&~~ call that FM and replace the FM Name by gv_fm_name
85 **&&~~ Call the Generated FM
86 CALL FUNCTION gv_fm_name
87 EXPORTING
88 /1bcdwb/docparams = gs_fp_docparams
89 * iv_name = p_name
90 * iv_flag = p_flag
91 iv_logo = gv_logo
92 EXCEPTIONS
93 usage_error = 1
94 system_error = 2
95 internal_error = 3
96 OTHERS = 4.
97 IF sy-subrc <> 0.
98 * Implement suitable error handling here
99 ENDIF.
100 *&---------------------------------------------------------------------*
101
102 *&---------------------------------------------------------------------*
103 *&---- Close the spool job
104 CALL FUNCTION 'FP_JOB_CLOSE'
105 EXCEPTIONS
106 usage_error = 1
107 system_error = 2
108 internal_error = 3
109 OTHERS = 4.
110 IF sy-subrc <> 0.
111 * <error handling>
112 ENDIF.

参考阅读:如何上载PNG图片到SAP系统内

SAP Adobe Form 教程五 图片的更多相关文章

  1. webpack教程(五)——图片的加载

    首先安装的依赖 npm install file-loader --save-devnpm install image-webpack-loader --save-devnpm install url ...

  2. C#微信公众号开发系列教程五(接收事件推送与消息排重)

    微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) C#微信公众号开发系列教程三(消息体签名及加解密) C ...

  3. 无废话ExtJs 入门教程五[文本框:TextField]

    无废话ExtJs 入门教程五[文本框:TextField] extjs技术交流,欢迎加群(201926085) 继上一节内容,我们在表单里加了个两个文本框.如下所示代码区的第42行位置,items: ...

  4. adobe form

    Call Adobe Form through ABAP Program 2015-04-24      0个评论    来源:ChampaignWolf的专栏   收藏    我要投稿 Scenar ...

  5. PySide——Python图形化界面入门教程(五)

    PySide——Python图形化界面入门教程(五) ——QListWidget 翻译自:http://pythoncentral.io/pyside-pyqt-tutorial-the-qlistw ...

  6. MeteoInfo-Java解析与绘图教程(五)

    MeteoInfo-Java解析与绘图教程(五) 最近太忙了,终于有时间继续写了,上文说到了基本上的绘图方法,但缺少色阶呈现,一般图叠加着地图上,后端不需要管色阶,但也要注意web页面色阶和我们的生成 ...

  7. CRL快速开发框架系列教程五(使用缓存)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  8. Android Studio系列教程五--Gradle命令详解与导入第三方包

    Android Studio系列教程五--Gradle命令详解与导入第三方包 2015 年 01 月 05 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://s ...

  9. Laravel教程 五:MVC的基本流程

    Laravel教程 五:MVC的基本流程 此文章为原创文章,未经同意,禁止转载. Controller 期间受到很多私事影响,终于还是要好好写写laravel的教程了. 上一篇我们说了数据库和Eloq ...

  10. VB6 GDI+ 入门教程[6] 图片

    http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[6] 图片 2009 年 6 月 19 日 15条评论 ...

随机推荐

  1. AXI4自定义FPGA外设理论基础

    AXI4自定义FPGA外设理论基础 1.理论目的 在前面的基于AXI4的自定义GPIO的实验中,大概地了解了AXI4的工作模式,即以寄存器为缓冲,实现操作和传输.那个实验只是将自定义的FPGA连接到现 ...

  2. Lab2:System Call

    trace 该系统调用程序,可以跟踪其他的系统调用命令,该系统调用的形参为一个整数掩码.其具体实参为1 << sys_call所得到的整数值,sys_call是一个系统调用指令在内核中定义 ...

  3. OpenHarmony 技术日直播回顾丨共建新技术,开拓新领域

    4月25日,"共建新技术,开拓新领域"OpenAtom OpenHarmony(以下简称"OpenHarmony")技术日在深圳顺利召开.OpenHarmony ...

  4. 直播预告丨 OpenHarmony 标准系统多媒体子系统之相机解读

    5 月 26日(周四)晚上 19 点,OpenHarmony 开源开发者成长计划知识赋能第五期"掌握 OpenHarmony 多媒体的框架原理"的第六节直播课,即将开播! 深开鸿资 ...

  5. Java 日期和时间 API:实用技巧与示例 - 轻松处理日期和时间

    Java 用户输入(Scanner) 简介 Scanner 类用于获取用户输入,它位于 java.util 包中. 使用 Scanner 类 要使用 Scanner 类,请执行以下步骤: 导入 jav ...

  6. 手撸jdk源码分析类加载机制

    我们一般写的java文件jvm是识别不了的,因此需要编译,编译后会变成.class文件,而要执行代码,jvm首先会去加载.class文件到内存中,那么他的流程是什么样的呢: 1.首先肯定创建java虚 ...

  7. 如何跑各种check

    如何进行 Fastcheck? 首先,导入环境变量: export CODE_BASE=/data/openGauss-server export BINARYLIBS=/data/openGauss ...

  8. HarmonyOS应用开发Web组件基本属性应用和事件

      一.Web组件概述 Web组件用于在应用程序中显示Web页面内容,为开发者提供页面加载.页面交互.页面调试等能力. ● 页面加载:Web组件提供基础的前端页面加载的能力,包括加载网络页面.本地页面 ...

  9. Spring Cloud Sleuth:分布式请求链路跟踪

    Spring Cloud Sleuth:分布式请求链路跟踪 SpringCloud学习教程 SpringCloud Spring Cloud Sleuth 是分布式系统中跟踪服务间调用的工具,它可以直 ...

  10. docker 应用篇————docker 的文件系统[十]

    前言 简单介绍一下docker的文件系统. 正文 docker 容器启动就是一个文件系统的启动. 在docker中,每一层镜像都具备一些文件. 比如说,有一个centos的镜像. 里面就是一个微小版的 ...