I am adding a new entry to a sorted internal table inside a loop. As the loop I'm in has a sort order that's different from that of the sorted table, I have to use an INSERT INTO
statement instead of an APPEND TO
as the latter risks violating the sort order causing a dump.
However, when I add that code, I get a syntax check warning with internal message code "MESSAGE GJK
", in EPC it says:
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.
But "Cannot be hidden using a pragma" just doesn't work for me. I understand the reason for the warning but I know at build time with 100% certainty that no loop will be active on the internal table that I'm inserting new records into. Yet I cannot hide this warning. Aside from causing useless warnings while developing, in some environments I wouldn't be able to transport code with syntax check warnings in it!
Is there any way to suppress this insuppresible warning?
Failing that, is there any way to avoid it? I can probably do so by using a temporary unsorted table as an intermediate and then just APPENDing the rows into the sorted table, but I balk at creating a useless (million-row) internal table just to bypass what seems to be a glaring oversight.