gpt4 book ai didi

abap - 为什么在内置功能模块中允许这种结构声明,而在新功能模块中却不允许?

转载 作者:行者123 更新时间:2023-12-01 13:39:25 26 4
gpt4 key购买 nike

我正在开发一个功能模块,以协助处理嵌入了逻辑的包含文本。在研究 SAP 处理 SAPScript 文件和解析逻辑的方式时,我发现了一个这样声明的结构:

DATA BEGIN OF events OCCURS 100.
INCLUDE STRUCTURE ITCCA.
DATA: command LIKE BOOLEAN,
template LIKE BOOLEAN,
mask LIKE BOOLEAN,
END OF events.

这显然有效,因为我可以在它运行打印程序时跟踪它。所以我想我会在我自己的代码中尝试类似的结构,但即使我像上面那样复制代码 1 for 1,我在激活过程中也会出错。错误是

"BOOLEAN" must be a flat structure. Internal tables, references, 
strings and structures are forbidden as components.

有人可以向我解释为什么这种结构在一个程序中有效而在我的程序中无效吗?

最佳答案

说明一下实际效果:LIKE通常指的是右边的数据对象(实际变量),不是数据类型 。正如您正确地发现的那样,一旦您提供了一个名为 BOOLEAN数据对象,它就会用于构造类型。如果该名称的数据对象不存在并且您不在类或接口(interface)中,则 obsolete variant of the LIKE statement将被触发,它也考虑了数据类型,但只允许右侧的某些元素——即只允许平面结构化对象或其组件。 LIKE DATATYPE-BOOLEAN 应该有效。与往常一样,错误消息的帮助不大。

关于abap - 为什么在内置功能模块中允许这种结构声明,而在新功能模块中却不允许?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41566304/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com