第一范文网 - 专业文章范例文档资料分享平台

abap表单设计

来源:用户分享 时间:2025/7/26 17:16:09 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

SAP Script 编程指南

2) POSTION 命令

语法:

/: POSITION [XORIGIN] [YORIGIN] [WINDOW] [PAGE]

作用:设置坐标原点,BOX命令中的XPOS, YPOS参数会使用这个值。当window第一次启动的时候,POSITION

值就是window的左上角。

参数:

① XORIGIN、YORIGIN

坐标系统原点

② WINDOW

设置左边和上边距匹配当前window

③ PAGE

设置左边和上边距匹配当前输出page(XORIGIN = 0 cm, YORIGIN = 0 cm)

示例:

/: POSITION WINDOW

Sets the origin for the coordinate system to the upper left corner of the window. /: POSITION XORIGIN 2 CM YORIGIN '2.5 CM'

Sets the origin for the coordinate system to a point 2 cm from the left edge and 2.5 cm from the upper edge of the output page. /: POSITION XORIGIN '-1.5' CM YORIGIN -1 CM

Shifts the origin for the coordinates 1.5 cm to the left and 1 cm up

3) SIZE 命令 语法:

/: SIZE [WIDTH] [HEIGHT] [WINDOW] [PAGE]

作用:设置在BOX命令中的WIDTH、HEIGHT值,当window第一次启动时,SIZE值与window相同。 参数:

① WIDTH、WIDTH

矩形或者线的尺寸

② WINDOW

设置宽度和高度值为当前window的宽度和高度 ③ PAGE

设置宽度和高度值为当前page的宽度和高度

示例:

/: SIZE WINDOW

Sets WIDTH and HEIGHT to the current window dimensions. /: SIZE WIDTH '3.5' CM HEIGHT '7.6' CM

稀世软件系统(上海)有限公司 29/56

SAP Script 编程指南

Sets WIDTH to 3.5 cm and HEIGHT to 7.6 cm. /: POSITION WINDOW

/: POSITION XORIGIN -20 TW YORIGIN -20 TW /: SIZE WIDTH +40 TW HEIGHT +40 TW /: BOX FRAME 10 TW

A frame is added to the current window. The edges of the frame extend beyond the edges of the window itself, so as to avoid obscuring the leading and trailing text characters.

2.SAPscript Control Commands

2.1 Control Commands语法

SAPscript Control Commands和通常文本行一样,在文本编辑器中输入和编辑,然而,和文本行相比,有下面一些区别:

? ? ? ? ?

在格式列输入段落格式“/:”表示一个控制命令; 在文本行中输入命令;

Control Commands连同其参数,最多占用一行文本行; 每一行只能有一个Control Commands;

编辑器行的格式对Control Commands没有影响。

如果Control Commands没有定义或者有语法错误,则Control Commands所在的行被作为注释处理。 2.2 Control Commands 种类

2.2.1 显示分页:NEW-PAGE

当main window显示不下时,SAPscript就会自动分页。可以利用NEW-PAGE命令强制分页(只要你想)。分页命令后面的文本显示在新页上,分页命令总是会执行(如果使用了)。

NEW-PAGE结束当前页。如果分页命令NEW-PAGE不带参数,在当前form中定义的page就作为next page使用;如果form中包括多个pages,可以将其中的任何pages作为next page使用。 语法:

/: NEW-PAGE [page_name] 示例: /: NEW-PAGE

当前页结束,接下来的文本将显示在form中指定的page上 /: NEW-PAGE S1

和上面一个例子一样,除了S1被指定为next page外

稀世软件系统(上海)有限公司 30/56

SAP Script 编程指南

2.2.2 限制分页:PROTECT

在打印文档的时候,有时候不想将一段段落打印在不同的页上,这时候就需要设置限制分页命令。为了做到这一点,SAPscript提供了PROTECT和ENDPROTECT命令对。如果当前页面上的余留空白能够用来打印一段完整的文本,则这一段文本就在当前也上打印,就好像没有PROTECT命令一样。然而,如果余留空白不能够用来打印整个文本,则PROTECT命令和NEW-PAGE具有同样的作用,这一段完整的文本将会在新的page中打印出来。

因而,PROTECT/ENDPROTECT也可以被看成是有条件的NEW-PAGE命令,条件就是当前main window中的余留空白是否能够满足PROTECT/ENDPROTECT中指定的文本。 语法:

/: PROTECT : :

/: ENDPROTECT

被保护的文本行封装在这两个命令之间。

注意:

? ? ? ?

没有PROTECT命令的ENDPROTECT命令是没有任何作用的;

如果漏掉了ENDPROTECT命令,SAPscript默认受保护的文档直到文本结束;

PROTECT/ENDPROTECT不能嵌套,如果在第一个ENDPROTECT结束前,定义了第二个PROTECT,则第二个 PROTECT/ENDPROTECT被忽略;

如果在PROTECT/ENDPROTECT命令对中封装的文本对于单个page来说太长的话,则在这段文本之前立即执行换页命令,文本按照通常的方式打印。在文本中某一个位置换页是不可避免的。

2.2.3 下一个main window命令:NEW-WINDOW

理论上,每一page能够由99个main windows组成。每一个main window被分配一个从0到98的识别号,windows也按照这个顺序来加载。这个特征使得SAPscript可以打印labels和输出多列文本。当一个main window填满后,如果有下一个main window的话,就是用下一个main window,在这两者之间会插入一个分页。 可以使用命令NEW-WINDOW来显示的调用下一个main window,即使当前的main window没有填满。 语法:

/: NEW-WINDOW

2.2.4 给文本symbol分配值:DEFINE

语法:

/: DEFINE &symbol_name& = 'value'

通过这种定义获得的值在事务结束后就失去了。如果想再次打印这个文本块,必须再次给这个文本symbol赋值。DEFINE命令的一个目的就是提供将值持久赋给文本的一种方式,以便当文本模块再次调用时,值可以重复使用。

稀世软件系统(上海)有限公司 31/56

SAP Script 编程指南

示例: /: DEFINE &subject& = 'Your letter of 7/3/95'

分配给symbol的值最大可以有60个字符。也可以包含其他的symbol变量。 请注意下面两个例子: 第一个例子:

/: DEFINE &symbol1& = 'mail'

/: DEFINE &symbol2& = 'SAP&symbol1&' /: DEFINE &symbol1& = 'script' &symbol2& -> SAPscript

第二个例子:

/: DEFINE &symbol1& = 'mail'

/: DEFINE &symbol2& := 'SAP&symbol1&' /: DEFINE &symbol1& = 'script' &symbol2& -> SAPmail

请注意观察这两个例子中的&symbol2&以及后面的赋值symbol,可以看出,可以将一个symbol变量连同其他字符赋给另一个symbol变量,但是如果用“=” 赋值symbol,则当“=”右边的symbol变量值发生变化时,“=”左边的值相应发生变化;另外一个方面,如果用“=” 赋值symbol,则当“:=”右边的symbol变量值发生变化时,“:=”左边的值并不发生变化。

2.2.5 格式化日期字段:SET DATE MASK

为了定义日期格式的字段,需要使用SET DATE MASK控制命令。

语法:

/: SET DATE MASK = 'date_mask' MASK可以是下面的代码:

? ? ? ?

DD: day (two digits)

DDD: day name - abbreviated DDDD: day name - written out in full MM: month (two digits)

? ?

? ? ? ? ? 示例:

MMM: month name – abbreviated

MMMM: month name - written out in full

YY: year (two digits) YYYY: year (four digits)

LD: day (formatted as for the L option) LM: month (formatted as for the L option) LY: year (formatted as for the L option)

在MASK中除了上面的代码外出现的所有其它字符都被当成简单文本处理,直接拷贝到输出。 假设当前的系统日期为 March 1 1997,则 /: SET DATE MASK = 'Foster City, MM/DD/YY' &DATE& -> Foster City, 03/01/97 (输出)

稀世软件系统(上海)有限公司 32/56

st

搜索更多关于: abap表单设计 的文档
abap表单设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c3ndyr0855j3blzb1bsz7_8.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top