Search code examples
abapdynpro

Set text field in screen visible again after user command


in my PBO Module I have something like this:

  LOOP AT SCREEN.
    IF screen-name EQ 'LBL_TEST'.
      screen-invisible = '1'.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.

I want to set 'LBL_TEST' visible again after some User-Command in the PAI-Module. How can I do it?

Best regards, Timur


Solution

  • You have to do it in PBO. You can set a global parameter when your operation completed and then check it. Like:

    DATA: gv_checker.
    
    PROCESS AFTER INPUT.
     case ok_code.
       when 'some_opp'.
         gv_checker = 'X'.
     endcase. 
    PROCESS BEFORE OUTPUT.
    LOOP AT SCREEN.
        IF screen-name EQ 'LBL_TEST'.
          screen-invisible = '1'.
          MODIFY SCREEN.
        ENDIF.
        if IF screen-name EQ 'LBL_TEST' and gv_checker = 'X'.
          screen-invisible = '0'.
          MODIFY SCREEN.
    
        endif.
    ENDLOOP.