点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
希望为此找到一些指南,但是没有看到任何具体建议。
定义变量时,是否使用数据元素或表和字段名称作为类型? 例如:
数据:lv_werks类型vbap-werks。
或
数据:lv_werks类型werks_d吗?
(而且,我总是觉得WERKS是一种结构。:))
我倾向于第一个选项,尤其是在为SELECT定义内部表时。 显然,SAP可以在标准表中更改分配的数据元素,因此像vbap-werks这样的引用可以防止可能的类型错误。 但是我想知道是否还有其他因素需要考虑。 您使用什么,为什么?
谢谢。
我主要直接使用数据元素,因为对我来说,类型是更显而易见的。 唯一的例外是当我为ALV定义输出表类型时,因为以我的经验,使用该结构可以更好地为生成的字段目录提供价值帮助。
在结构定义中更改的数据元素的自变量以两种方式起作用。 也许您的代码仅在结构改变时类型没有改变时才起作用,具体取决于用例(不是适当选择)。
(还在类型定义中使用结构引入了对结构类型的附加硬依赖性,这种依赖性可能不如数据元素可见,特别是如果它是数据库表的结构。也就是说,如果使用包接口。 。)
有时候我发现自己也在做同样的事情。 在烧掉几次(如在WERKS上)时,"猫头鹰不是它们看起来的样子"之后,我开始更喜欢选项,以避免出现任何问题。 但是,当它是一个更通用的变量时,我会寻找一个数据元素。 我想这很有道理...至少那是我对自己说的。 :)
我也相信使用最简单的(阅读:最基本的)选项。 所以这对我来说也是数据元素。
和其他人一样,我也倾向于使用内联声明。
我不同意塔伦(Tarun)关于用途的说法,恕我直言,这不必要地缩小了范围。 在同一个组件中,一个开发人员可以引用VBAP-WERKS,而另一个T001W-WERKS-毕竟这是Plant的起源。
因此数据元素既简洁又通用。
"无论如何,您都不应该对标准表格进行SELECT。使用标准API!
最终,SAP可能会决定更改表本身,而直接选择将在升级中破坏代码。"
我第一次听到这样的评论。 真的有可能每次都使用API代替DB上的Selects吗?
令人惊讶并且很难理解这种方法的潜在动机。
K.Kiran。
我承认我不记得数据元素时使用第一个选项,因此我将变量引用到表的字段,否则引用基本数据 元素。
我知道,我很懒。
过去,我一直使用数据元素。 但是不要问我为什么。 也许只是因为它更短。
当然是现在;),我只使用内联声明。
一周热门 更多>