Hi Friends.
SAP is full of surprises. Today when I was trying to test a program, I saw the messages are not coming properly. Instead of showing the full message, it is truncated with a cross icon.
Finally I was able to trace the source of the problem. The problem lies in the SAP FM - POPUP_WITH_TABLE_DISPLAY_OK. I have used this function module numerous times in past and but this time, I realized there is a "IF" condition in the source code of this FM at line no - 68.
LOOP AT LISTTAB.
IF LISTTAB+15(1) = 'S' OR LISTTAB+15(1) = 'F'.
IF LISTTAB+15(1) = 'S'.
WRITE: / LISTTAB+0(15), ICON_OKAY AS ICON.
ELSEIF LISTTAB+15(1) = 'F'.
WRITE: / LISTTAB+0(15), ICON_CANCEL AS ICON.
ENDIF.
ELSE.
WRITE: / LISTTAB.
ENDIF.
ENDLOOP.
So if the 16th character of your message is either S or F, then your message will be truncated. If you are facing this problem now you the reason. You can solve this issue in your own way.
[My sol - simply convert the 16th character to lower case if it F or S.]
SAP is full of surprises. Today when I was trying to test a program, I saw the messages are not coming properly. Instead of showing the full message, it is truncated with a cross icon.
Finally I was able to trace the source of the problem. The problem lies in the SAP FM - POPUP_WITH_TABLE_DISPLAY_OK. I have used this function module numerous times in past and but this time, I realized there is a "IF" condition in the source code of this FM at line no - 68.
LOOP AT LISTTAB.
IF LISTTAB+15(1) = 'S' OR LISTTAB+15(1) = 'F'.
IF LISTTAB+15(1) = 'S'.
WRITE: / LISTTAB+0(15), ICON_OKAY AS ICON.
ELSEIF LISTTAB+15(1) = 'F'.
WRITE: / LISTTAB+0(15), ICON_CANCEL AS ICON.
ENDIF.
ELSE.
WRITE: / LISTTAB.
ENDIF.
ENDLOOP.
So if the 16th character of your message is either S or F, then your message will be truncated. If you are facing this problem now you the reason. You can solve this issue in your own way.
[My sol - simply convert the 16th character to lower case if it F or S.]