首页 > 解决方案 > 如何通过对 ABAP 中的内部表使用 CL_ABAP_ELEMDESCR 来获得精度为 16 的数据类型 DF16_RAW?

问题描述

我有AforDF16_RAWEfor 的内部类型DF34_RAW,现在在运行时我正在为我想要的数据类型创建一个动态表,DF16_RAWDF34_RAW具有基于内部类型的指定精度。我的代码如下:

CASE WA_COL-INTTYPE.
          WHEN 'A'.  LO_DESCR_RESULT = CL_ABAP_ELEMDESCR=>GET_DECFLOAT16( ).
          WHEN 'E'.  LO_DESCR_RESULT = CL_ABAP_ELEMDESCR=>GET_DECFLOAT34( ).

在这里,我想获得具有指定精度的数据类型。不知道怎么弄的?

标签: abap

解决方案


变量的某些部分特定于 ABAP 字典,即“DDIC”(搜索帮助、DF* 类型的输出样式等)。如果您想创建一个包含特定于 ABAP 字典的信息的变量,则必须参考DDIC 中的元素(即数据元素或表/结构组件),然后使用:

lo_descr_result = cl_abap_typedescr=>describe_by_name( 'DDICdataelement' ).

或者

lo_descr_result = cl_abap_typedescr=>describe_by_name( 'DDICtablestruct-Component' ).

推荐阅读