ABAP语法检查:此处不允许进行字符串计算-为什么?

2020-09-21 01:50发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我有这种方法: * -...

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

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


我有这种方法:

 *  -------------------------------------------  -------------------------------------------- +
 * | 实例私有方法ZCL_MF01_DP_OUTPUT-> EQUIPMENTS_MAP
 * + ------------------------------------------------  ------------------------------------------------- +
 * |  [--->] IO_DP类型参考ZCL_CS01_CONFIRM_DP_ORDER
 * |  [--->] IT_CONF_T类型GTY_T_TIME_CONFS
 * |  [--->] IT_CONF_M类型GTY_T_MAT_CONFS
 * |  [--->] IT_EQUI类型GTY_T_EQUIPMENTS
 * |  [<-()] RS_RES类型ZPO_ORDER_DT_EQUIPMENTS
 * + ------------------------------------------------  -------------------------------------- 
   方法equipments_map。
     rs_res =值#(
       设备=值#(
         对于it_equi中的s_equi(
           equipment_number = | {s_equi-equipment alpha = out} |  * <-
           equipment_description =空间
           serial_number =空间
           time_confirmations =值#(
             time_confirmation =值#(
               对于it_conf_t中的s_conft,其中(
                 设备= s_equi-equipment)
               (time_conf_map(s_conft))
             )" time_confirmation
           )" time_confirmations
           material_confirmations =值#(
             material_confirmation =值#(
               对于it_conf_m中的s_confm,其中(
                 设备= s_equi-equipment)
               (mat_conf_map(s_confm))
             )" material_confirmation
           )" mat_confs
           维护=值#(
             保修=空间
             guarantee_until =空间
             maintenance_contract =空间
           )
         )"表格行
       )设备
     )。 设备。
   方法。


 

在标记的行上,出现语法错误"此处不允许进行字符串计算",但我不明白,为什么?

ABAP版本:
740 SP 0018

3条回答
大简至美
2020-09-21 02:40 .采纳回答

简而言之:

数据:
   行的开头,
     马驹类型字符串,
     I型大肠杆菌,
   行结束。
 行=值#(colt = 1 +1)。
 行=值#(大肠杆菌='...`)。
 line-coli = | ... |。
 line-coli =`...`&&`...`
 行=值#(大肠杆菌= CONV i(| ... |))。
 line = VALUE#(coli = CONV i(`...`&&`...`)))。
 行=值#(大肠杆菌= | ... |)。  "错误
 行=值#(大肠杆菌=`...`&&`...`)。  "错误
 

比方说,在VALUE运算符中将字符串表达式分配给不兼容的结构组件时,存在一个小缺陷。

一种解决方法是明确使用CONV。 开发得到通知。

一周热门 更多>