点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
也许是另一个ABAP内核错误,尚未纠正?
使用以下代码,DATA(name)= ...使用GETWA_NOT_ASSIGNED进行简短的转储。 在某些其他情况下,它可能不会失败,但返回的值将具有不同的偏移量an和不同的长度!
DATA(text)='hello'。 在文本结果数据(匹配项)中查找所有'l'事件。 LOOP AT匹配ASSIGNING FIELD-SYMBOL()。 DATA(名称)= to_upper(CONV字符串(text + -offset( -length)))。 "短暂的垃圾 ENDLOOP。
这是由于构造函数表达式与子字段访问结合使用了 。 如果我删除其中之一,那没关系。
似乎子字段访问/构造函数表达式的确是一个问题,因为我在表理解内还存在另一个COND(不是CONV)问题。 将其移至LET aux = str + off(len)已解决了该问题,但我没有看到有关该主题的注释(仅 1972833 接近,但用于旧内核741)。
您是否遇到相同的问题,您的ABAP版本/内核是什么,您知道SAP note/kernel解决了什么问题吗?
我的ABAP版本:
- ABAP 7.52(7.5C)SP0内核753 SP300。
- ABAP 7.52 SP1内核753 SP16。
非常感谢您。
桑德拉
为便于记录,我在SAP支持部门发布了一个事件。 我会及时通知您。
(我自己使用的链接: 258494/2019构造函数 +子字段访问->短转储GETWA_NOT_ASSIGNED )
更新20190603:已通过SAP注释 2791097-具有偏移量/长度访问的ABAP表达式产生错误的结果
如果我这样做,则可以:
,但如果我这样做,则语法错误:
如果我这样分隔行,则不会转储:
可能与内联声明中的泛型类型有关……
Sandra您好,希望您一切都好
发生错误是因为解释器无法将静态 char 转换为 string (就像您之前所做的那样)。 field-symbol语句具有动态更改变量内容的能力(无需使用MODIFY语句或任何其他...),因此无法将char(5)转换为string(255),因为字符串值是 表内容很长。
我对您的代码做了一些更改。 请再次测试
KR,
亚瑟·席尔瓦(Arthur Silva)
桑德拉·罗西哦,是的,我 知道。 但是,如果您要使用老式的结构...;-)
Sandra,
您是否尝试过我发送的代码?
没有字段符号,没有错误:
带有字段符号:错误:
不要将字段符号与内联声明混淆。
Matthew Billingham 让我们在新问题
SAP回答了他们将要更正此错误,他们将发布新的SAP注释...以继续。
一周热门 更多>