我正在向循环内的有序内部表添加新条目。由于我所在的循环的排序顺序与有序表格不同,因此我必须使用INSERT INTO
而不是APPEND TO
,因为后者有风险违反导致转储的排序顺序。当向内部表中插入记录时抑制不可克服的警告
然而,当我再补充一点的代码,我得到一个语法检查与内部邮件代码“MESSAGE GJK
”警告,在EPC它说:
Program: ZCL_CLASS Method METHOD_NAME Row: 301
Syntax check warning.
In the table "LT_TABLE_NAME" a row was to be changed,
deleted or inserted. It is not possible
to determine statically if a LOOP is active over "LT_TABLE_NAME"
Internal message code: MESSAGE GJK
Cannot be hidden using a pragma.
但只是“不能使用编译隐藏”不适合我。我明白这个警告的原因,但我知道在构建时100%的确定性,我将插入新记录的内部表格上不会激活任何循环。然而我不能隐藏这个警告。除了在开发过程中导致无用的警告,在某些环境中,我将无法使用语法检查警告来传输代码!
有什么办法可以抑制这种难以预料的警告吗?
失败了,有什么办法可以避免它吗?我可以这样做,通过使用临时unsorted表作为中间,然后只是将行附加到排序表中,但我不愿意创建一个无用的(百万行)内部表,只是为了绕过似乎是一个明显的疏忽。