前文:

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. execute immediate 用法小结

    1.常规用法 v_sql varchar2(1000); v_sql := 'update Test set name= ''lw112190'' where id= 1'; execute imme ...

  2. 揭秘镭速传输点对点传输技术,NAT+Raysync强强组合

    点对点传输是一种文件即时传输方式用于实现数据的快速联动,为所有客户端提供资源,包括带宽.存储空间.计算能力.点对点传输技术有很多应用,包括共享各种格式音频.视频.数据等. 在5G重新定义带宽,信息技术 ...

  3. 算法学习笔记【8】| 单调队列优化DP

    单调队列:就是滑动窗口,可以求出定长 RMQ,时间复杂度线性. 优化 DP 首先把dp方程写成这个样子: 或者其他运算f[i]=max(或者其他运算){f[j]+calc(i,j)}<scrip ...

  4. STAR法则是什么(如何把一件事表达清楚)

    STAR法则,即为Situation Task Action Result的缩写,具体含义是: Situation: 事情是在什么情况下发生 Task: 你是如何明确你的任务的 Action: 针对这 ...

  5. 【已解决】Hadoop_01 Linux修改hosts文件

    设置主机名 [root@localhost ~]# hostnamectl set-hostname s1[root@localhost ~]# reboot 修改hosts文件 [root@mast ...

  6. #排列组合#CF1550D Excellent Arrays

    洛谷传送门 CF1550D 分析 对于excellent的 \(a\) 来说 \(|a_i-i|=x\) 的值是固定的,考虑枚举它 一半正一半负时函数值是最大的,当 \(n\) 为奇数时要分为两种情况 ...

  7. #dp#CodeChef Little Elephant and Mouses

    LEMOUSE 分析 由于被单只老鼠吓到只能算一次,所以前两次走的位置也可能会被老鼠吓到. 设 \(dp[n][m][o][p]\) 表示走到 \((n,m)\) 上一步走的是 \(o\) 这种方式, ...

  8. PDF库 libharu 简单操作

    libharu官网:http://libharu.org/ 直接下载下来编译就可以使用了(*:我下载的版本是:libharu-libharu-v2.4.3-0-g8dbcfe4.tar)   一.编译 ...

  9. Python smtp发送邮件怎么设置抄送人

    设置抄送人,非常简单,只需要添加一条信息就可以了,例: cc_list = ['xx@xxx.cn', 'xx@xxx.cn'] msg['Cc'] = ','.join(cc_list) smtp. ...

  10. MyBatis 应用的组成

    王有志,一个分享硬核Java技术的互金摸鱼侠 加入Java人的提桶跑路群:共同富裕的Java人 大家好,我是王有志.在上一篇文章的最后,我们写了一个简单的例子,今天我们就通过这个例子来看一看一个标准的 ...