如何在动态范围内进行动态检查

2020-08-22 09:08发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)伙计们, 我正在寻找一种解决方...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


伙计们,

我正在寻找一种解决方案,该方法如何在ABAP中实施动态检查。

我有一个表,用于存储本地字段名(来自调用程序/badi),符号,选项,上下限以建立范围。

此范围必须动态创建(因为可以有不同的字段名),我必须检查本地字段是否在范围内。

示例:

本地字段1:LV_VBUND(类型为VBUND)

本地字段2:I_NEW_COMPANY_CODE(TYPE BUKRS)

表条目:

LV_VBUNDIBTxxxxyyyy

I_NEW_COMPANY_CODEIEQ0001

I_NEW_COMPANY_CODEIEQ0002

1。获取字段类型

2。创建范围

3。填充范围

4。检查范围

我希望你能帮助我。 我尝试使用字段符号之类的所有方法均未成功。

提前感谢

5条回答
hongfeng1314
2020-08-22 09:37

官方支持的解决方案(而不是使用IF_WD_SELECT_OPTIONS可能会执行以下操作):

 DATA visibletypename TYPE字符串。
 数据参考类型DATA REF。
 字段符号类型标准表。

 visibletypename ='VBUND'。
 创建数据dref TYPE RANGE OF(可见类型名称)。
 ASSIGN dref-> * TO <范围>。

 DATA vbund TYPE vbund。
 如果vbund IN <范围>。
   ...
 ENDIF。

PS:我没有进行测试,但它应该可以工作(至少在ABAP 7.52中有效)

编辑:在Frederic通知后更正了代码。

一周热门 更多>