SAP ABAP DUMP GETWA_NOT_ASSIGNED 指针未分配错误
前言
昨天业务方反应SAC的数据未更新
馒头检查了一下是BW处理链中合并层执行错误
查看原因是转换进程DUMP了
Field symbol has not been assigned yet. 指针字段未被分配
这个错很容易理解,以前也遇到很多次
但是致使这一次DUMP的原因一开始确实有点没想到
仔细看了好久 才发现当时写的代码漏洞
问题描述
使用LOOP循环 result_package 并分配到指针 <result_fields> 这是ABAP for HANA里很常见的写法
但是就是在LOOP的中段代码处DUMP掉了
这让人很难理解
LOOP AT result_package ASSIGNING <result_fields> .
* ...
IF <result_fields>-field IS INITIAL. " DUMP Field symbol has not been assigned yet.
" ...
ENDIF.
ENDLOOP.
尝试捕获异常
一开始没找到问题的原因
于是馒头就想着那我捕获这个异常应该可以了吧
结果意想不到的失败了
程序DUMP依旧
LOOP AT result_package ASSIGNING <result_fields> .
* ...
TRY.
IF <result_fields>-field IS INITIAL. " DUMP Field symbol has not been assigned yet.
" ...
ENDIF.
CATCH cx_root INTO DATA

本文讲述了在SAP ABAP编程中遇到的‘SAPABAPDUMPGETWA_NOT_ASSIGNED’错误,即指针未分配的问题。通过详细分析代码,发现错误源于在循环中删除数据导致的后续代码执行。解决方案是在删除数据后加入CONTINUE语句,避免未分配的指针尝试访问。此外,文章提到了捕获异常的尝试及其失败,强调了代码审查的重要性。
最低0.47元/天 解锁文章
2154

被折叠的 条评论
为什么被折叠?



