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

Re: ALV in screen painter

$
0
0

I have used 2 tables SFLIGHT(IF gv_error_log = 'X'.) and SBOOK(IF gv_success_log = 'X'.).

I have just modify your program with data selection part and It is working fine for me.

Code:

REPORT zdi_test2.

 

DATA: gt_sflight TYPE TABLE OF sflight.

DATA: gt_sbook TYPE TABLE OF sbook.

 

SELECT * FROM sflight INTO TABLE gt_sflight UP TO 10 ROWS.

SELECT * FROM sbook INTO TABLE gt_sbook UP TO 10 ROWS.

 

END-OF-SELECTION.

   CALL SCREEN 100.

 

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

*  MODULE STATUS_0100 OUTPUT

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

*

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

MODULE status_0100 OUTPUT.

   SET PF-STATUS 'ZSTATUS'.

   SET TITLEBAR 'XXX'.

ENDMODULE.                 " STATUS_0100  OUTPUT

 

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

*  MODULE LIST OUTPUT

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

*

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

MODULE list OUTPUT.

   DATAr_container  TYPE REF TO cl_gui_custom_container,

           r_grid       TYPE REF TO cl_gui_alv_grid.

   DATAgv_success_log TYPE c,

           gv_error_log   TYPE c.

 

   IF r_container IS INITIAL.

     CREATE OBJECT r_container

       EXPORTING

         container_name = 'CONTAINER'.

 

     CREATE OBJECT r_grid

       EXPORTING

         i_parent = r_container.

 

     IF gv_error_log = 'X'.

       CALL METHOD r_grid->set_table_for_first_display

         EXPORTING

           i_structure_name = 'SFLIGHT'

*         is_layout        = is_layout

         CHANGING

           it_outtab        = gt_sflight.

 

 

     ELSEIF gv_success_log = 'X'.

       CALL METHOD r_grid->set_table_for_first_display

         EXPORTING

           i_structure_name = 'SBOOK'

*         is_layout        = is_layout

         CHANGING

           it_outtab        = gt_sbook.

 

 

     ELSE.

       CALL METHOD r_grid->set_table_for_first_display

         EXPORTING

           i_structure_name = 'SFLIGHT'

*         is_layout        = is_layout

         CHANGING

           it_outtab        = gt_sflight.

 

     ENDIF.

   ENDIF.

ENDMODULE.                 " LIST  OUTPUT

 

 

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

*  MODULE USER_COMMAND_0100 INPUT

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

*

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

MODULE user_command_0100 INPUT.

   CASE sy-ucomm.

     WHEN 'BCK'.

       LEAVE PROGRAM.

     WHEN 'ERRORLOG'.

       IF gv_success_log = 'X'.

         CLEAR gv_success_log.

       ENDIF.

       gv_error_log = 'X'.

 

       CALL METHOD r_grid->free( ).

       FREE r_grid.

 

       CALL METHOD r_container->free( ).

       FREE r_container.

 

       CALL SCREEN 100.

     WHEN 'SUCCESSLOG'.

       IF gv_error_log = 'X'.

         CLEAR gv_error_log.

       ENDIF.

       gv_success_log = 'X'.

       CALL METHOD r_grid->free( ).

       FREE r_grid.

 

       CALL METHOD r_container->free( ).

       FREE r_container.

 

       CALL SCREEN 100.

   ENDCASE.

 

ENDMODULE.                 " USER_COMMAND_0100  INPUT


Flow logic for screen 100.

PROCESS BEFORE OUTPUT.

   MODULE list.

   MODULE status_0100.

 

 

PROCESS AFTER INPUT.

   MODULE user_command_0100.


SE41:

se41.JPG

SE51: Place custom container with Name 'CONTAINER'

Se51.JPG

I guess this sample program willl help you to identify your mistake in se38/se41/se51.


Best Regards,

Digesh


Viewing all articles
Browse latest Browse all 8802

Trending Articles



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