Show TOC Start of Content Area

Background documentation Method PBO_CONTROL  Locate the document in its SAP Library structure

In this method you define the coding required to create and manage control objects (such as an SAP List Viewer grid or a text edit control) before display.

 

Sample source text:

 

METHOD if_maintenance_brf~pbo_control.

 

...

 

  CALL METHOD super->if_maintenance_brf~pbo_control.

 

  IF NOT mo_alv_grid IS INITIAL.

    CALL METHOD mo_alv_grid->free.

    CLEAR mo_alv_grid.

  ENDIF.

  IF NOT mo_container IS INITIAL.

    CALL METHOD mo_container->free.

    CLEAR mo_container.

  ENDIF.

 

 

*------ create container and control - if necessarry ------------------

  IF mo_container IS INITIAL.

 

*------... the container ----------------------------------------------

    CREATE OBJECT mo_container

      EXPORTING

      container_name = 'CC201301'.

 

*------... the alv grid control ---------------------------------------

    CREATE OBJECT mo_alv_grid

      EXPORTING

      i_parent = mo_container.

 

    CALL METHOD build_fieldcat

      IMPORTING

        et_fieldcat = lt_fieldcat.

 

    CLEAR ls_layout.

*    ls_layout-grid_title = text-001.

    ls_layout-cwidth_opt = 'X'.

 

 

    CALL METHOD mo_alv_grid->set_table_for_first_display

        EXPORTING

*           i_structure_name   = 'SBRF_WHEN_MATRIX'

           i_bypassing_buffer = 'X'

           is_layout          = ls_layout

         CHANGING

           it_fieldcatalog    = lt_fieldcat

           it_outtab          = dt_brf144.

 

    ls_f4-fieldname  = 'PARAM_REF'.   "EC SYNTCHAR

    ls_f4-register   = abap_true.

    INSERT ls_f4 INTO TABLE lt_f4.

    ls_f4-fieldname  = 'FIELD'.   "EC SYNTCHAR

    ls_f4-register   = abap_true.

    INSERT ls_f4 INTO TABLE lt_f4.

 

    mo_alv_grid->register_f4_for_fields( lt_f4 ).

 

    SET HANDLER me->handle_f4 FOR mo_alv_grid.

 

    SET HANDLER

      me->handle_toolbar FOR mo_alv_grid.

 

    SET HANDLER

      me->on_enter FOR mo_alv_grid.

 

    SET HANDLER

      me->on_user_command FOR mo_alv_grid.

 

    SET HANDLER

      me->on_double_click FOR mo_alv_grid.

 

    CALL METHOD mo_alv_grid->set_toolbar_interactive.

 

  ELSEIF NOT mv_alv_grid_modified IS INITIAL.

 

    CALL METHOD mo_alv_grid->refresh_table_display.

 

    CLEAR mv_alv_grid_modified.

 

  ENDIF.

 

  IF mv_edit_mode <> '3'.

    CALL METHOD mo_alv_grid->set_ready_for_input

      EXPORTING

        i_ready_for_input = 1.

  ELSE.

    CALL METHOD mo_alv_grid->set_ready_for_input

      EXPORTING

        i_ready_for_input = 0.

  ENDIF.

ENDMETHOD. 

 

End of Content Area