Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 3327

Re: OO ALV Popup

$
0
0

* Hi, hier ist eine andere alternative ALV popup OO kein fieldcatlog nee conteiner.

 

DATA: BEGIN OF wa_t001,

   bukrs LIKE t001-bukrs,

   butxt LIKE t001-butxt,

   waers LIKE t001-waers,

   ktopl LIKE t001-ktopl,

END OF wa_t001.

 

DATA: t_t001 LIKE STANDARD TABLE OF wa_t001.

 

*----------------------------------------------------------------------*

*       CLASS CL_EVENT_HANDLER DEFINITION

*----------------------------------------------------------------------*

CLASS cl_event_handler DEFINITION.

 

   PUBLIC SECTION.

 

     CLASS-DATA:

       lo_alv_object TYPE REF TO cl_salv_table.

 

     CLASS-METHODS on_function_click

       FOR EVENT if_salv_events_functions~added_function

         OF cl_salv_events_table IMPORTING e_salv_function.

ENDCLASS.                    "cl_event_handler DEFINITION

 

*----------------------------------------------------------------------*

*       CLASS CL_EVENT_HANDLER IMPLEMENTATION

*----------------------------------------------------------------------*

CLASS cl_event_handler IMPLEMENTATION.

 

   METHOD on_function_click.

 

     CASE e_salv_function.

       WHEN 'GOON'.

         lo_alv_object->close_screen( ).

*       do action

       WHEN 'ABR'.

         lo_alv_object->close_screen( ).

*       cancel

     ENDCASE.

   ENDMETHOD.                    "on_function_click

ENDCLASS.                    "cl_event_handler IMPLEMENTATION

 

 

*--------------------------------------------------------------------*

* START-OF-SELECTION.

*--------------------------------------------------------------------*

START-OF-SELECTION.

 

   DATA: lo_columns    TYPE REF TO cl_salv_columns_table,

         lo_column     TYPE REF TO cl_salv_column,

         lo_alv_object TYPE REF TO cl_salv_table,

         lo_functions  TYPE REF TO cl_salv_functions,

         lo_events     TYPE REF TO cl_salv_events_table.

 

* Llenar Tabla Interna de Ejemplo con Sociedades

   SELECT bukrs butxt waers ktopl INTO TABLE t_t001

     FROM t001

     WHERE land1 = 'CL'

     ORDER BY bukrs.

 

   TRY.

       CALL METHOD cl_salv_table=>factory

         IMPORTING

           r_salv_table = lo_alv_object

         CHANGING

           t_table      = t_t001.

 

* Asignar Eventos

       lo_events = lo_alv_object->get_event( ).

       SET HANDLER cl_event_handler=>on_function_click FOR lo_events.

 

* Guardar Regerencia de acceso al objeto

       cl_event_handler=>lo_alv_object = lo_alv_object.

 

* Usar status gui ST850 del programa SAPLKKB

       lo_alv_object->set_screen_status( pfstatus = 'ST850'

                                         report   = 'SAPLKKBL' ).

 

* Dimenciones Popup

       lo_alv_object->set_screen_popup( start_column = 25    " Columna de Inicio

                                        end_column   = 90    " Ancho Ventana

                                        start_line   = 5     " Fila de Inicio

                                        end_line     = 10 ). " Largo Ventana

 

       lo_columns = lo_alv_object->get_columns( ).

       lo_columns->set_optimize( 'X' ).

 

* Visualizar ALV

       lo_alv_object->display( ).

 

     CATCH cx_salv_msg.

       MESSAGE 'Error: ALV exception CX_SALV_MSG' TYPE 'I'.

     CATCH cx_root.

       MESSAGE 'Error: ALV exception desconosida' TYPE 'I'.

   ENDTRY.


Viewing all articles
Browse latest Browse all 3327

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>