abap - 如何通过对 ABAP 中的内部表使用 CL_ABAP_ELEMDESCR 来获得精度为 16 的数据类型 DF16_RAW?
问题描述
我有A
forDF16_RAW
和E
for 的内部类型DF34_RAW
,现在在运行时我正在为我想要的数据类型创建一个动态表,DF16_RAW
并DF34_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 字典,即“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' ).
推荐阅读
- ios - 安装在颤振模块中的软件包未找到模块问题(添加到应用程序)
- c++ - 使用 VS Code 集成控制台进行 C++ 调试
- mongodb - $add 仅支持数字或日期类型,不支持数组在 Mongoose 中递增时出错
- javascript - Jquery循环比较没有得到预期的结果
- javascript - 在 React 的组件构造函数中传递函数
- symfony - 一次执行多个请求时,Windows 上的 Doctrine 缓存问题
- javascript - 选项卡控件在 ASP.net MVC 中无法按预期工作
- ios - 如何在 swift 5 中过滤数组以在搜索栏中搜索文本?
- stm32 - STM32 HAL_I2C_Master_Transmit - 为什么我们需要转移地址?
- mysql - 如何在 mySQL 中删除小数点前的前导 0