- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1
第十章 使用字段符号
概览
内容
字段符号的 概念 1
定义字段符 号 2
为内部字段 定义字段符 号 2
定义结构化 的字段符号 4
定义局部字 段符号 5
将数据对象 分配给字段 符号 6
ASSIGN 语句的基本 格式 6
将字段符号 分配给其它 字段符号 10
分配字段串 组件 11
定义字段符 号的数据类 型 12
更改小数位 14
分配全局字 段的局部副 本 15
运行检查 16
在 ABAP/4 程序中,字段符号是现有字段的占位符。字段符号本身不直接为字段保留空间,
而只是指向一个字段(该字段在程序运行前还未可知)。字段符号可以与程序语言 C 中的
指针概念相比较(即,用内容操作符 * 表示的指针)。然而,在 ABAP/4 中,从变量的意
义上说,与指针不是真正等价的,此处,变量包含内存地址,并且不用内容操作符即可使
用。您只能使用字段符号指向的数据对象。
本节介绍
字段符号的概念
有时仅知道运行时要处理哪个字段和怎样处理它。
为此,可以在程序中创建字段符号。运行时,可以将实际字段分配给这种字段符号。 用字
段符号编程的所有操作将用分配的字段来执行。成功地完成分配后,在 ABAP/4 中无论参
考字段符号或参考字段本身,都没有任何区别。
在 ABAP/4 中字段符号能指向任何数据对象,也能指向 ABAP/4 字典中定义的结构。
不管是否有类型说明,都可以创建字段符号。如果没有说明,字段符号采用分配字段的所
有属性。如果有说明,在分配过程中系统将检查被分配的字段是否与字段符号类型相匹配。
无论哪一种应用,在程序中使用字段符号之前,必须首先分配一个字段给字段符号。
字段符号提供了一些特性,使得它们具有很大的灵活性:
_ 可以将所分配字段的偏移量和长度指定为变量。
2
_ 可以将字段符号分配给其它字段符号,甚至指定其偏移量和长度。
_ 对字段符号的分配可以扩展到字段边界之外。这允许对规则存储的数据
进行有效的访问。
_ 可以强制字段符号具有不同于分配字段的类型和小数位。
_ 字段符号可有一个结构用来指向结构的单个组件。
尽管字段符号的这些灵活性使您找到一些问题的完美解答,但使用起来要十分小心。由于
可以将直到运行时才可知的数据对象分配给字段符号,所以对涉及到字段符号的操作,语
法和安全性检查的有效性是非常有限的。这可能导致运行错误或不正确的数据分配。
运行错误指明明显的问题,而不正确的数据分配是很危险的,因为它们很难被检测出来。
因此,只有在绝对确信所做事情,或者没有其它 ABAP/4 语句能解决问题时才使用。
例如,如果正在处理字符串,您可能只想处理一个字符串的一部分,其位置和长度取决于
字符串内容。可以使用字段符号做到这一点。然而,自从 R/3 系统的 3.0 版本后,您也可
以使用具有变量偏移量和长度说明的 MOVE 语句(参见 用指定偏移 量赋值 (页 6–3) )。
使用 MOVE 语句(可能与一些辅助变量结合使用)比使用字段符号更安全。字段符号优
点在于某些情况下能提高响应时间。
定义字段符号
可以为任何内部数据对象定义字段符号
可以为内部和外部结构定义结构化的字段符号
可以在子程序和功能模块中局部地使用字段符号
为内部字段定义字段符号
要为内部数据对象
文档评论(0)