2023 Dec 06 6:14 PM
Hi Experts,
I hope somebody can help me on this. I implemented an Enhancement on the Tcode FK08, when the user call a Vendor, the enhancement produce a pop up with some information of this vendor. So far, everything works fine, but there are users using the transaction FK09 and when they try to call a vendor from there the System givis this error showing the empty pop up.
I'm a bit confused on this, because for persons with a wide range of privileges on the system both transactions work properly, but for others not. The Enhancements have the condition "IF SY-TCODE = 'FK08' then continue with the coding, but even calling the transaction from the FK09, the program set SY-TCODE as FK08 anyway. Is there any trick to avoid the error for the users on FK09 ?
Thanks,
Lee
2023 Dec 07 6:36 AM
Don't focus on the different behavior between FK08 and FK09, focus on the actual problem in FK09 which is the forbidden execution of "SET SCREEN..."
So it means that SAPLSBAL_DISPLAY 0101 is of type subscreen and SET SCREEN (or equivalent statement) runs during the PAI (or PBO).
What is the origin, custom or standard code?
If it's standard, did you search in SAP notes?
2023 Dec 07 1:28 PM
Internally FK09 (list) call transaction FK08, but it set some value in memory
gv_tcode = sy-tcode.
export gv_tcode to memory id 'RFKCON00_FK09'.
CALL TRANSACTION 'FK08' AND SKIP FIRST SCREEN.
" ...
clear gv_tcode.
export gv_tcode to memory id 'RFKCON00_FK09'
So read this value from memory, if it's FK09, FK08 was called from FK09.
However, dynpro SAPLSBAL_DISPLAY / 0101 is a sub-screen, so SET SCREEN is not allowed. What did you want to do?