我来自Java世界,我想知道是否有任何东西可以帮助我理解abap开发对象的属性......有点像反射。
知道 ABAP 中发生的所有内容都保留在数据库中的某个地方,我想知道我将如何找出对象的保存方式和位置。
例如,我想知道是否有任何函数枚举结构的字段,或枚举对象的属性,或者如果没有这样的东西(但属性仍然明显存在),那么什么表将保存这些(以便我可以创建自己的函数或类)
还有你知道的任何其他可发现性技巧都很好......我知道这个问题有点笼统,但由于我是 abap 的新手,我真的不知道该问什么:P
谢谢,你们统治。
如果您正在寻找类似反射的东西,请查看 RTTI。这涵盖了您将遇到的大多数内容的运行时结构。如果您想了解隐藏工具表面下发生了什么,只需打开 SQL 跟踪 (ST05),在编辑器中打开有问题的对象并检查访问了哪些表......
回答你的问题,如果你把它分成多个问题,加上你想要的一些特定任务,也许会更容易。
我记得的一些主题(请验证一下,如果我没记错的话,我暂时无法检查):
DDIC 对象存储在带有 DD*
的表中。
表格(和属性)存储在dd02l
中,dd02t
包括文本。 dd03l
包含字段。 dd04tl
包含数据元素的文本。
但是,如果您在此表中添加某些内容,它将无济于事。后台的数据库不会获取定义。
如果你想创造一些 dynmaic 魔法,你可以看看 field-symbols
和 assign
命令。