Для чего используется sy-oncom?
У меня есть следующее объяснение от SDN, но в моей программе я получаю значение «T» и «X».
SY-ONCOM
На флаге фиксации. Для этого системного поля устанавливаются разные значения в зависимости от состояния вызова программы ABAP. Из них гарантируется только значение «P». Если вообще, SY-ONCOM нужно запрашивать только для «P».
Значение 'P' означает, что программа уже выполняет подпрограмму, запущенную с помощью PERFORM ... ON COMMIT, и поэтому дальнейший вызов подпрограммы с использованием PERFORM ... ON COMMIT вызовет ошибку времени выполнения.