Skip to Content
-1

Half screen alv grid, half screen tabstrip

Nov 22, 2017 at 12:07 PM

84

avatar image
Former Member

Hi , does anyone know how to make half screen alv grid, half screen tabs that will have some PERFORM fields from ALV GRID? Thanks in advance. Please find below my code :

REPORT  Z_DATE_BAZA_PF.

TABLES MAKT.

TABLES MVKE.

TABLES T178T.

TABLES MARA.

TABLES MARC.

TABLES T002.


TYPE-POOLS: slis.  " SLIS contains all the ALV data types



DATA: MyGridTitle TYPE LVC_TITLE.

DATA: report_id LIKE sy-repid.

DATA: MyLayout TYPE slis_layout_alv. "alv layout

DATA: afield TYPE slis_fieldcat_alv.

*DATA: it_sort TYPE slis_t_sortinfo_alv.

DATA: it1_sort TYPE slis_t_sortinfo_alv.

*DATA: wa_sort   TYPE slis_sortinfo_alv.

DATA: it_filter TYPE slis_t_filter_alv.

Data: ls_filter TYPE slis_filter_alv.

DATA: FIELDCATALOG TYPE slis_t_fieldcat_alv, "WITH HEADER LINE,

      GD_LAYOUT    TYPE slis_layout_alv,

      G_SAVE TYPE C VALUE 'X',

      G_VARIANT TYPE DISVARIANT,

      GX_STOC TYPE DISVARIANT,

      G_EXIT TYPE C.

DATA: MyEvents TYPE slis_t_event.



DATA: it_sort      TYPE slis_t_sortinfo_alv,

      wa_sort      TYPE slis_sortinfo_alv..



data: MySwitch_Acces(3) Type c.

Data: MySwitch_Unit(3)  Type c.

Data: MySwitch_Depozit(3)  Type c.

CONSTANTS MySpras(2)   VALUE '4'.

DATA: LowUnit(7) TYPE c.

DATA: LowDivizia(5) TYPE c.

Data: wTxt1(50)    type C.

DATA: PRIVILEG_USER(100) type c VALUE 'K_ABAP,K_BASIS,K_PRG,PRG_IT'.

DATA: w_layout TYPE lvc_s_layo.

DATA  number TYPE sy-dynnr.

data: ok_code type SY-UCOMM.

DATA: GV_FLAG TYPE CHAR1.



DATA: name  TYPE vrm_id,

      list  TYPE vrm_values,

      value LIKE LINE OF list,

      save_ok TYPE sy-ucomm.

DATA: GV_SCR TYPE SY-DYNNR.



TYPES: BEGIN OF ROWUSERS,

            RECORD_ID   LIKE ZUSERS-RECORD_ID,

            USER_NAME   LIKE ZUSERS-USER_NAME,

            PROG_NAME   LIKE ZUSERS-PROG_NAME,

            REPO_TITLE  LIKE ZUSERS-REPO_TITLE,

            OPTIONS     LIKE ZUSERS-OPTIONS,

            UNITLOG     LIKE ZUSERS-UNITLOG,

            DOMENII     LIKE ZUSERS-DOMENII,

            CONTMAT     LIKE ZUSERS-CONTMAT,

            DEPOZITE    LIKE ZUSERS-DEPOZITE,

            DIVIZII     LIKE ZUSERS-DIVIZII,

            PCTLUCR     LIKE ZUSERS-PCTLUCR,

            CENTPROF    LIKE ZUSERS-CENTPROF,

            PROG_PROD   LIKE ZUSERS-PROG_PROD,

            RETETE      LIKE ZUSERS-RETETE,

            SERVICII    LIKE ZUSERS-SERVICII,

            ACCES       LIKE ZUSERS-ACCES,

            LOWDATA     LIKE ZUSERS-LOWDATA,

            HIGHDATA    LIKE ZUSERS-HIGHDATA,

            FLAG(1)     TYPE C,

            LINE_KOLOR(4) TYPE C,

      END OF ROWUSERS.

*

DATA: ARTUSERS TYPE ROWUSERS,

      ARTPROGR TYPE ROWUSERS,

      ITUSERS  TYPE STANDARD TABLE OF ROWUSERS INITIAL SIZE 0,

      ITPROGR  TYPE STANDARD TABLE OF ROWUSERS INITIAL SIZE 0.

DATA: FIELDCATALOG2 TYPE lvc_s_fcat OCCURS 0,

      G_VARIANT2    TYPE DISVARIANT.



"DATA: afield        type lvc_s_fcat.



DATA: Splitter_1  TYPE REF TO cl_gui_splitter_container,

      Container   TYPE REF TO cl_gui_custom_container,

      Container_1 TYPE REF TO cl_gui_container,

      Container_2 TYPE REF TO cl_gui_container,

      Grid1       TYPE REF TO cl_gui_alv_grid,

      Grid2       TYPE REF TO cl_gui_alv_grid.

DATA: G_container TYPE scrfname VALUE 'CCONTAINER'.

TYPE-POOLS cndp.



 call screen 100.



TYPES: BEGIN OF tables_fields,

  WERKS TYPE MARC-WERKS, "Unitate logistica

  "MATNR TYPE MARC-MATNR, "Cod material

  MATNR TYPE MARA-MATNR,  "Cod material

  MAKTX TYPE MAKT-MAKTX, "Date de baza 1->Descriere material

  KONDM TYPE MVKE-KONDM, "Vanzari 2 ->GrupCalcPretMaterial cod

  VTEXT TYPE T178T-VTEXT, "Vanzari 2 ->GrupCalcPretMaterial descriere

  GROES TYPE MARA-GROES, "Date de baza 1 -> Marime/ Dimensiuni

  SPRAS TYPE MAKT-SPRAS,

  TEXTPRI(250) TYPE c, "Text date principale.

  TEXTVER(75) TYPE C, "Text verificare.

  COMINT(75) TYPE C, "Comentariu intern.

  TEXTVANZ(75) TYPE C, "Text vanzari.

  "vbeln Type VBAK-VBELN,

  "POSNR TYPE VBAK-POSNR,

END OF tables_fields.



DATA: lt_join TYPE STANDARD TABLE OF tables_fields,

      wa_join TYPE tables_fields.

SELECTION-SCREEN BEGIN OF BLOCK BLOCK1 WITH FRAME TITLE text-001.

SELECT-OPTIONS UnitLog FOR MARC-WERKS DEFAULT '3000'. " Unitate logistica

SELECT-OPTIONS Material FOR MARC-MATNR default'V826016-C0.75L'."Cod material

SELECT-OPTIONS DenMat FOR MAKT-MAKTX."Descriere material

SELECTION-SCREEN END OF BLOCK BLOCK1.



PERFORM UserAcces.



if  MySwitch_Unit = 'Yes' AND MySwitch_Acces = 'Yes'.

  PERFORM Selectare.

  loop at lt_join into wa_join.

    PERFORM READTEXT.

    PERFORM READTEXT2.

    PERFORM READTEXT3.

    PERFORM READTEXT4.

  Modify lt_join from Wa_join transporting TEXTPRI TEXTVER COMINT TEXTVANZ.



  PERFORM BUILD_FIELDCATALOG.

  PERFORM sort_catalog.

  EndLoop.

*  PERFORM LOOP.

*  PERFORM CULOARE.

*  PERFORM FILTRARE.



  PERFORM DISPLAY_ALV_REPORT TABLES lt_join.



*ELSE.

*  Perform mymessage using 'Nu aveti acces'  'Va rog consultati superiorul dvs' '.'.

Endif.



at selection-screen.

*https://archive.sap.com/discussions/thread/82713

*https://archive.sap.com/discussions/thread/347034

*https://archive.sap.com/discussions/thread/53618

*  http://www.onexeno.com/alv-grid-should-display-in-three-tabstrips/

START-OF-SELECTION.

Form UserAcces.

  select *

    ##too_many_itab_fields

  INTO CORRESPONDING FIELDS OF TABLE ITusers

  from zusers

  where USER_NAME = SY-UNAME and PROG_NAME = 'z_date_baza_pf'.

*

  if Sy-DBCNT = 0.  "Utilizator inexistent in tabela - PRIVILEGIAT

    if Privileg_User ns Sy-UName.

      Concatenate Sy-Uname ',' Privileg_User

                 into Privileg_User.

    EndIf.

    MySwitch_Acces    = 'Yes'.

*      MySwitch_Depozit  = 'Yes'.

    MySwitch_Unit     = 'Yes'.

  else.

    MySwitch_Unit      = 'No'.

    MySwitch_Acces     = 'No'.  " Daca utilizatorul exista in tabela

*  MySwitch_Depozit   = 'No'.

    Loop at ITusers into ARTUSERS.  " ZUSERS inseamna

      if sy-subrc = 0.

        exit.

      EndIf.

    EndLoop.

*

    Case ArtUsers-Acces.

      when 'Exc'.

        Perform MyMessage using

             ' Acces nepermis !!!'

             ' Acces nepermis !!!'

             ' Consultati administratorul Bazei de date SAP'.

        MySwitch_Acces = 'No'.

        exit.

      when 'Yes'.

        if Privileg_User ns Sy-UName.

          Concatenate Sy-Uname ',' Privileg_User

                     into Privileg_User.

        EndIf.

        MySwitch_Acces = 'Yes'.

      when 'No' or ''.

        Privileg_User = ''.

        MySwitch_Acces = 'No'.

    EndCase.

*   Validare unitati logistice

    if ArtUsers-UnitLog = ''.

      MySwitch_Unit = 'Yes'.

    else.

      MySwitch_Unit = 'No'.

      Loop at UnitLog.

        Concatenate 'Y-' UnitLog-Low into LowUnit.

        MySwitch_Unit = 'No'.

        if ArtUsers-UnitLog cs LowUnit.

          MySwitch_Unit = 'Yes'.

        else.

          MySwitch_Unit = 'No'.

          Concatenate 'Nu aveti acces la Unitatea:'

                      UnitLog-Low into wtxt1 separated by space.

          Perform MyMessage using

         ' Acces nepermis !!!'

         wtxt1

         ' Consultati administratorul bazei de date'.

          exit.

        EndIf.

      EndLoop.

    EndIf.

  ENDIF.

ENDFORM.



Form MyMessage using p_title p_text1 p_text2.

  CALL FUNCTION 'POPUP_TO_DISPLAY_TEXT'

    EXPORTING

      titel        = p_title

      textline1    = p_text1

      textline2    = p_text2

      start_column = 25

      start_row    = 6.

*       importing

*            answer        = risp2.

EndForm.



FORM Selectare.



  SELECT DISTINCT a~werks

         a~matnr

         b~maktx

         c~KONDM

         d~VTEXT

         e~GROES

         b~spras


   FROM MARC as a

   INNER JOIN MAKT AS b

   on a~matnr = b~matnr

   INNER JOIN MVKE as c

   ON a~matnr = c~matnr

   INNER JOIN T178T as d

   on c~kondm = d~kondm

   INNER JOIN MARA as e

   on a~matnr = e~matnr

 INTO CORRESPONDING FIELDS OF TABLE lt_join

    WHERE a~werks IN UnitLog AND " Unitate logistica

          a~matnr IN Material AND "Cod material

          b~maktx IN DenMat." AND

  "b~spras EQ sy-langu.



*SORT lt_join by WERKS.

*DELETE ADJACENT DUPLICATES FROM lt_join comparing WERKS.



ENDFORM.

FORM sort_catalog.



  wa_sort-spos      = 2.

  wa_sort-fieldname = 'MATNR'.

  wa_sort-up        = 'X'.

  wa_sort-subtot    = 'X'.

  APPEND wa_sort TO it_sort.



  wa_sort-spos      = 4.

  wa_sort-fieldname = 'KONDM'.

  wa_sort-up        = 'X'.

  wa_sort-subtot    = 'X'.

  APPEND wa_sort TO it_sort.



  wa_sort-spos      = 5.

  wa_sort-fieldname = 'VTEXT'.

  wa_sort-up        = 'X'.

  wa_sort-subtot    = 'X'.

  APPEND wa_sort TO it_sort.



  wa_sort-spos      = 6.

  wa_sort-fieldname = 'GROES'.

  wa_sort-up        = 'X'.

  wa_sort-subtot    = 'X'.

  APPEND wa_sort TO it_sort.


ENDFORM.

FORM READTEXT.



  data: it_MVKE type standard table of MVKE initial size 0.

  data: lMVKE like MVKE, lMAKT like MAKT, lT002 like T002 ,

        lTDNAME like THEAD-TDNAME,"text header



        it_TLINE type standard table of TLINE,

        wa_TLINE type TLINE.



  data: cObject(10) type c, cID(4) type c.



  select MATNR from MARA into corresponding fields of table it_MVKE

  where MATNR in Material order by MATNR.

  cID = 'GRUN'. cObject = 'MATERIAL'. "Text date principale "





  loop at it_MVKE into lMVKE.



    lTDNAME = lMVKE-MATNR.



    select spras from T002 into lT002.



      CALL FUNCTION 'READ_TEXT'

        EXPORTING

          CLIENT   = SY-MANDT

          ID       = cID

          LANGUAGE = lT002-SPRAS

          NAME     = lTDNAME

          OBJECT   = cObject

        TABLES

          LINES    = it_TLINE

        EXCEPTIONS

          ID       = 1

          OTHERS   = 8.



      IF SY-SUBRC EQ 0.



        LOOP AT it_TLINE INTO wa_TLINE.

*          wa_join-TEXTPRI = wa_TLINE-TDLINE.

*          append wa_join to lt_join.

*          clear wa_join.



         CONCATENATE wa_join-TEXTPRI wa_tline-tdline INTO wa_join-TEXTPRI separated by ' ; '.



        ENDLOOP.

      ENDIF.

    ENDSELECT.

  ENDLOOP.

ENDFORM.


FORM READTEXT2.



*http://www.gotothings.com/sapac002.htm

*http://www.erpgreat.com/abap/use-fm--read-text-to-read-the-various-text.htm

*http://sap.ittoolbox.com/groups/technical-functional/sap-dev/call-function-read_text-173308

  "https://saplsmw.com/Generate_a_Report_with_Material_Master_Long_Texts

  "https://www.consolut.com/en/s/sap-ides-access/d/s/doc/F-READ_MULTIPLE_TEXTS/

***********************functional doar pe un singur text*******************************************

  data: it_MVKE type standard table of MVKE initial size 0.

  data: lMVKE like MVKE, lMAKT like MAKT, lT002 like T002 ,

   lTDNAME like THEAD-TDNAME,"text header



   it_TLINE type standard table of TLINE,

   wa_TLINE type TLINE, lText type string.


  data: cObject(10) type c, cID(4) type c.

  select MATNR from MARA into corresponding fields of table it_MVKE

  where MATNR in Material order by MATNR.

  cID = 'PRUE'.  cObject = 'MATERIAL'. "Text verificare


  loop at it_MVKE into lMVKE.



    lTDNAME = lMVKE-MATNR.



    "loop at it_cids into wa_cids.



    select spras from T002 into lT002.



      CALL FUNCTION 'READ_TEXT'

        EXPORTING

          CLIENT   = SY-MANDT

          ID       = cID

          LANGUAGE = lT002-SPRAS

          NAME     = lTDNAME

          OBJECT   = cObject

        TABLES

          LINES    = it_TLINE

        EXCEPTIONS

          ID       = 1

          OTHERS   = 8.


      IF SY-SUBRC EQ 0.


        select single * from MAKT into lMAKT where MATNR eq lMVKE-MATNR

         and SPRAS eq lT002-SPRAS.


        LOOP AT it_TLINE INTO wa_TLINE.

*          wa_join-TEXTVER = wa_TLINE-TDLINE.

*          append wa_join to lt_join.

*          CLEAR wa_join.

          CONCATENATE wa_join-TEXTVER wa_tline-tdline INTO wa_join-TEXTVER separated by ' ; '.

        ENDLOOP.

      ENDIF.

    ENDSELECT.

  ENDLOOP.

ENDFORM.



FORM BUILD_FIELDCATALOG.

  REFRESH FIELDCATALOG.



  afield-FIELDNAME = 'WERKS'.

  afield-SELTEXT_M = 'Unitate logistica'.

  afield-COL_POS   = 1.

  afield-OUTPUTLEN = 10.

  APPEND afield TO FIELDCATALOG.

  CLEAR afield.



  afield-FIELDNAME = 'MATNR'.

  afield-SELTEXT_M = 'Cod material'.

  afield-COL_POS   = 2.

  afield-OUTPUTLEN = 10.

  APPEND afield TO FIELDCATALOG.

  CLEAR afield.



  afield-FIELDNAME = 'MAKTX'.

  afield-SELTEXT_M = 'Descriere material '.

  afield-COL_POS   = 3.

  afield-OUTPUTLEN = 20.

  APPEND afield TO FIELDCATALOG.

  CLEAR afield.



  afield-FIELDNAME = 'KONDM'.

  afield-SELTEXT_M = 'Cod grupa'.

  afield-COL_POS   = 4.

  afield-OUTPUTLEN = 7.

  APPEND afield TO FIELDCATALOG.

  CLEAR afield.



  afield-FIELDNAME = 'VTEXT'.

  afield-SELTEXT_M = 'Descriere grupa'.

  afield-COL_POS   = 5.

  afield-OUTPUTLEN = 10.

  afield-decimals_out = 0.

  APPEND afield TO FIELDCATALOG.

  CLEAR afield.



  afield-FIELDNAME = 'GROES'.

  afield-SELTEXT_M = 'Marime/Dimensiuni'.

  afield-COL_POS   = 6.

  afield-OUTPUTLEN = 28.

  APPEND afield TO FIELDCATALOG.

  CLEAR afield.


  afield-FIELDNAME = 'TEXTPRI'.

  afield-SELTEXT_M = 'Text date principale'.

  afield-COL_POS   = 7.

  afield-OUTPUTLEN = 20.

  APPEND afield TO FIELDCATALOG.

  CLEAR afield.

  afield-FIELDNAME = 'TEXTVER'.

  afield-SELTEXT_M = 'Text verificare'.

  afield-COL_POS   = 8.

  afield-OUTPUTLEN = 15.

  APPEND afield TO FIELDCATALOG.

  CLEAR afield.



  afield-FIELDNAME = 'COMINT'.

  afield-SELTEXT_M = 'Comentariu intern'.

  afield-COL_POS   = 09.

  afield-OUTPUTLEN = 18.

  afield-decimals_out = 0.

  APPEND afield TO FIELDCATALOG.

  CLEAR afield.

ENDFORM.

FORM DISPLAY_ALV_REPORT TABLES lt_join.

* USING P_GRID_TITLE.

* rs_selfield TYPE slis_selfield.

  report_id = SY-REPID.

* RS_SELFIELD-ROW_STABLE = 'X'.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

    EXPORTING

      I_CALLBACK_PROGRAM       = report_id

      I_CALLBACK_TOP_OF_PAGE   = 'TOP-OF-PAGE'

*     I_CALLBACK_USER_COMMAND  = 'USER_COMMAND'

*     I_CALLBACK_PF_STATUS_SET = 'SET_PF_STATUS'

      IT_FIELDCAT              = FIELDCATALOG"[]

*     I_GRID_TITLE             = P_GRID_TITLE

      I_SAVE                   = 'X'

      IT_EVENTS                = MyEvents

      is_layout                = MyLayout

      it_sort                  = it_sort

      it_filter                = it_filter " List output filter criteria

*     IS_VARIANT               = G_VARIANT



    TABLES

      T_OUTTAB                 = lt_join

    EXCEPTIONS

      PROGRAM_ERROR            = 1

      OTHERS                   = 2.



  IF SY-SUBRC <> 0.

  ENDIF.



ENDFORM.

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

* Grid  Header                                            *

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

Form TOP-OF-PAGE.

*ALV Header declarations

  data: My_header type slis_t_listheader,

        wa_header type slis_listheader,

        My_line   like wa_header-info,

        ld_lines  type i,

        ld_linesc(10) type c.

* Title

  clear wa_header.

  wa_header-typ  = 'H'.

  wa_header-info =

    'Raport date de baza produse finite'.

  append wa_header to My_header.

*

*  clear wa_header.

*  wa_header-typ  = 'H'.

*  wa_header-info =

*  'Efectuati DUBLU Click pt Analiza Grafica - optiunile 01-08'.

*  append wa_header to My_header.

  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

    EXPORTING

      it_list_commentary = My_header.

*            i_logo             = 'Z_LOGO'.

endform.

*&SPWIZARD: FUNCTION CODES FOR TABSTRIP 'TABSTRIP'

CONSTANTS: BEGIN OF C_TABSTRIP,

             TAB1 LIKE SY-UCOMM VALUE 'P1',

             TAB2 LIKE SY-UCOMM VALUE 'P2',

             TAB3 LIKE SY-UCOMM VALUE 'P3',

             TAB4 LIKE SY-UCOMM VALUE 'P4',

           END OF C_TABSTRIP.

*&SPWIZARD: DATA FOR TABSTRIP 'TABSTRIP'

CONTROLS:  TABSTRIP TYPE TABSTRIP.

DATA:      BEGIN OF G_TABSTRIP,

             SUBSCREEN   LIKE SY-DYNNR,

             PROG        LIKE SY-REPID VALUE 'Z_DATE_BAZA_PF',

             PRESSED_TAB LIKE SY-UCOMM VALUE C_TABSTRIP-TAB1,

           END OF G_TABSTRIP.

*&SPWIZARD: OUTPUT MODULE FOR TS 'TABSTRIP'. DO NOT CHANGE THIS LINE!

*&SPWIZARD: SETS ACTIVE TAB

MODULE TABSTRIP_ACTIVE_TAB_SET OUTPUT.

  SET PF-STATUS 'MAIN100'.

*  creating object reference for container



*  PERFORM Selectare.

*  PERFORM BUILD_FIELDCATALOG.

  CREATE OBJECT container

  EXPORTING

    container_name = 'CCONTAINER'."Pass name of container created in Screen no 100


*splitting the main container into 2 rows & 1 coloum

CREATE OBJECT splitter_1

EXPORTING

   Parent     = container

   Rows      = 2

   Columns = 1.


*getting the reference for the splited container (row 1 & col 1 container)

CALL METHOD splitter_1->get_container

EXPORTING

   Row      = 1

   Column = 1

RECEIVING

   Container = container_1.

*getting the reference for the splited container (row 2 & col 1 container)

*CALL METHOD splitter_1->get_container

*EXPORTING

*   Row      = 2

*   Column = 1

*RECEIVING

*   Container = container_2.

*populating first internal table to the container

CREATE OBJECT container

EXPORTING

   container_name = g_container.

CREATE OBJECT grid1

EXPORTING

   i_parent = container_1.

CALL METHOD grid1->set_table_for_first_display

EXPORTING

    is_variant  = G_VARIANT2

    i_save      = ' '

    is_layout   = w_layout

CHANGING

    it_outtab       = lt_join

    IT_FIELDCATALOG = FIELDCATALOG

EXCEPTIONS

    invalid_parameter_combination = 1

    program_error                 = 2

    too_many_lines                = 3

    OTHERS                        = 4.



  TABSTRIP-ACTIVETAB = G_TABSTRIP-PRESSED_TAB.

  CASE G_TABSTRIP-PRESSED_TAB.

    WHEN C_TABSTRIP-TAB1.

      G_TABSTRIP-SUBSCREEN = '0101'.

    WHEN C_TABSTRIP-TAB2.

      G_TABSTRIP-SUBSCREEN = '0102'.

    WHEN C_TABSTRIP-TAB3.

      G_TABSTRIP-SUBSCREEN = '0103'.

    WHEN C_TABSTRIP-TAB4.

      G_TABSTRIP-SUBSCREEN = '0104'.

    WHEN OTHERS.

*&SPWIZARD:      DO NOTHING

  ENDCASE.

ENDMODULE.


*&SPWIZARD: INPUT MODULE FOR TS 'TABSTRIP'. DO NOT CHANGE THIS LINE!

*&SPWIZARD: GETS ACTIVE TAB

*MODULE TABSTRIP_ACTIVE_TAB_GET INPUT.

*  OK_CODE = SY-UCOMM.

*  CASE OK_CODE.

*    WHEN C_TABSTRIP-TAB1.

*      G_TABSTRIP-PRESSED_TAB = C_TABSTRIP-TAB1.

*    WHEN C_TABSTRIP-TAB2.

*      G_TABSTRIP-PRESSED_TAB = C_TABSTRIP-TAB2.

*    WHEN C_TABSTRIP-TAB3.

*      G_TABSTRIP-PRESSED_TAB = C_TABSTRIP-TAB3.

*    WHEN C_TABSTRIP-TAB4.

*      G_TABSTRIP-PRESSED_TAB = C_TABSTRIP-TAB4.

*    WHEN OTHERS.

**&SPWIZARD:      DO NOTHING

*  ENDCASE.

*ENDMODULE.

*&---------------------------------------------------------------------*

*&      Module  USER_COMMAND_0100  INPUT

*&---------------------------------------------------------------------*

*       text

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

MODULE USER_COMMAND_0100 INPUT.

  CALL METHOD cl_gui_cfw=>dispatch.

  IF   sy-ucomm = 'BACK'

    OR sy-ucomm = 'EXIT'

    OR sy-ucomm = 'CANCEL'.



   CALL METHOD container->free.

*   LEAVE PROGRAM.

    LEAVE TO SCREEN 0.


<br>

Below see below how it should look like

capture.jpg (225.4 kB)
10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

Raymond Giuseppi
Nov 22, 2017 at 01:26 PM
1

Just split the dynpro in two area, a container upper part, and a tab subscreen in lower part.

Or for dynamic ratio, define only the tab dynpro subfield area as a full screen wide, then use a docking container for the ALV, attached upper side and with a ratio of 50%

Show 3 Share
10 |10000 characters needed characters left characters exceeded
Former Member

Hi Raymond, thank you for your answer ,i already did a container in the upper part and a tabstrip in the bottom part.How can i now fill my alv content in the container and in the tab subscreen?

0

The first is basic concept within SE51, the second one look for samples in wiki of the forum with keyword CL_GUI_DOCKING_CONTAINER.

0
Former Member
Raymond Giuseppi

Raymond Giuseppi Thank you!

0