Skip to Content

LAYOUT alv

Im using 'REUSE_ALV_GRID_DISPLAY' in my report. And in the selection screen as per client requirement i gave SELECT layout using 'REUSE_ALV_VARIANT_F4'.

Now if user select any layout from selection ,the output alv should be open in that layout. So in the 'REUSE_ALV_GRID_DISPLAY' where to mention that layout? and how?

Plz help.

Thanks in advance.

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

3 Answers

  • author's profile photo Former Member
    Former Member
    Posted on Nov 30, 2007 at 12:14 PM

    Hi Kaushik,

    See in exporting parameters below for the funcion i have mentioned about the layout----


    > IS_LAYOUT = l _layout

    See this below in the function.

    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

    EXPORTING

    • I_INTERFACE_CHECK = ' '

    • I_BYPASSING_BUFFER = ' '

    • I_BUFFER_ACTIVE = ' '

    I_CALLBACK_PROGRAM = sy-repid

    I_CALLBACK_PF_STATUS_SET = 'PF_STATUS'

    I_CALLBACK_USER_COMMAND = 'VAL'

    • I_CALLBACK_TOP_OF_PAGE = ' '

    • I_CALLBACK_HTML_TOP_OF_PAGE = ' '

    • I_CALLBACK_HTML_END_OF_LIST = ' '

    • I_STRUCTURE_NAME =

    • I_BACKGROUND_ID = ' '

    • I_GRID_TITLE =

    • I_GRID_SETTINGS =

    IS_LAYOUT = l_layout

    IT_FIELDCAT = lt_fieldcat

    • IT_EXCLUDING =

    • IT_SPECIAL_GROUPS =

    IT_SORT = l_sort

    • IT_FILTER =

    • IS_SEL_HIDE =

    • I_DEFAULT = 'X'

    • I_SAVE = 'X '

    • IS_VARIANT =

    • IT_EVENTS =

    • IT_EVENT_EXIT =

    • IS_PRINT =

    • IS_REPREP_ID =

    • I_SCREEN_START_COLUMN = 0

    • I_SCREEN_START_LINE = 0

    • I_SCREEN_END_COLUMN = 0

    • I_SCREEN_END_LINE = 0

    • I_HTML_HEIGHT_TOP = 0

    • I_HTML_HEIGHT_END = 0

    • IT_ALV_GRAPHICS =

    • IT_HYPERLINK =

    • IT_ADD_FIELDCAT =

    • IT_EXCEPT_QINFO =

    • IR_SALV_FULLSCREEN_ADAPTER =

    • IMPORTING

    • E_EXIT_CAUSED_BY_CALLER =

    • ES_EXIT_CAUSED_BY_USER =

    TABLES

    T_OUTTAB = ITAB_FINAL

    EXCEPTIONS

    PROGRAM_ERROR = 1

    OTHERS = 2

    .

    IF SY-SUBRC <> 0.

    • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

    • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

    ENDIF.

    ENDFORM. "sub_DISP

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 30, 2007 at 12:17 PM

    Hi again,

    Declare layout as at top of program.

    DATA: l_layout TYPE slis_layout_alv.

    reward if useful.

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Nov 30, 2007 at 12:39 PM

    Hi

    the FM REUSE_ALV_VARIANT_F4 itself will assign the layout which is mentioned in exporting parameters.

    Go thru in this..

    DATA: VAR TYPE DISVARIANT.

    <b>PARAMETERS: P_VARI LIKE DISVARIANT-VARIANT.</b>

    INITIALIZATION.

    <b>VAR-REPORT = SY-REPID.</b>

    AT SELECTION-SCREEN ON VALUE-REQUEST FOR <b>P_VARI.</b>

    CALL FUNCTION 'REUSE_ALV_VARIANT_F4'

    EXPORTING

    IS_VARIANT = <b>VAR</b>

    IMPORTING

    ES_VARIANT =<b> VAR</b>.

    P_VARI = VAR-VARIANT.

    call function 'REUSE_ALV_GRID_DISPLAY'

    exporting

    i_callback_program = sy-repid

    is_layout = gd_layout

    it_fieldcat = fieldcatalog[]

    i_save = 'X'

    is_variant = <b>VAR</b>

    tables

    t_outtab = it_ekko

    .

    Add a comment
    10|10000 characters needed characters exceeded

    • Hi,

      I will give u the entire pgm.

      go thru n find wat the prob is.

      REPORT ZAK_ALV1 .

      type-pools: slis. "ALV Declarations

      DATA: VAR TYPE DISVARIANT.

      *Data Declaration

      TYPES: BEGIN OF t_ekko,

      SEl, "stores which row user has selected

      ebeln TYPE ekpo-ebeln,

      ebelp TYPE ekpo-ebelp,

      statu TYPE ekpo-statu,

      aedat TYPE ekpo-aedat,

      matnr TYPE ekpo-matnr,

      menge TYPE ekpo-menge,

      meins TYPE ekpo-meins,

      netpr TYPE ekpo-netpr,

      peinh TYPE ekpo-peinh,

      END OF t_ekko.

      DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,

      wa_ekko TYPE t_ekko.

      *ALV data declarations

      data: fieldcatalog type slis_t_fieldcat_alv with header line,

      gd_layout type slis_layout_alv,

      gd_repid like sy-repid.

      DATA: GT_EVENTS TYPE slis_t_event,

      WA_EVENT TYPE slis_alv_event.

      PARAMETERS: P_VARI LIKE DISVARIANT-VARIANT.

      INITIALIZATION.

      VAR-REPORT = SY-REPID.

      *Start-of-selection.

      START-OF-SELECTION.

      perform data_retrieval.

      perform build_fieldcatalog.

      perform build_layout.

      perform display_alv_report.

      AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VARI.

      CALL FUNCTION 'REUSE_ALV_VARIANT_F4'

      EXPORTING

      IS_VARIANT = VAR

      IMPORTING

      ES_VARIANT = VAR.

      P_VARI = VAR-VARIANT.

      &----


      *& Form BUILD_FIELDCATALOG

      &----


      • Build Fieldcatalog for ALV Report

      ----


      form build_fieldcatalog.

      fieldcatalog-fieldname = 'EBELN'.

      fieldcatalog-seltext_m = 'Purchase Order'.

      fieldcatalog-col_pos = 0.

      fieldcatalog-outputlen = 15.

      fieldcatalog-emphasize = 'X'.

      fieldcatalog-key = 'X'.

      fieldcatalog-hotspot = 'X'.

      append fieldcatalog to fieldcatalog.

      clear fieldcatalog.

      fieldcatalog-fieldname = 'EBELP'.

      fieldcatalog-seltext_m = 'PO Item'.

      fieldcatalog-col_pos = 1.

      append fieldcatalog to fieldcatalog.

      clear fieldcatalog.

      fieldcatalog-fieldname = 'STATU'.

      fieldcatalog-seltext_m = 'Status'.

      fieldcatalog-key = 'X'.

      fieldcatalog-col_pos = 2.

      append fieldcatalog to fieldcatalog.

      clear fieldcatalog.

      fieldcatalog-fieldname = 'AEDAT'.

      fieldcatalog-seltext_m = 'Item change date'.

      fieldcatalog-col_pos = 3.

      append fieldcatalog to fieldcatalog.

      clear fieldcatalog.

      fieldcatalog-fieldname = 'MATNR'.

      fieldcatalog-seltext_m = 'Material Number'.

      fieldcatalog-col_pos = 4.

      append fieldcatalog to fieldcatalog.

      clear fieldcatalog.

      fieldcatalog-fieldname = 'MENGE'.

      fieldcatalog-seltext_m = 'PO quantity'.

      fieldcatalog-col_pos = 5.

      append fieldcatalog to fieldcatalog.

      clear fieldcatalog.

      fieldcatalog-fieldname = 'MEINS'.

      fieldcatalog-seltext_m = 'Order Unit'.

      fieldcatalog-col_pos = 6.

      append fieldcatalog to fieldcatalog.

      clear fieldcatalog.

      fieldcatalog-fieldname = 'NETPR'.

      fieldcatalog-seltext_m = 'Net Price'.

      fieldcatalog-col_pos = 7.

      fieldcatalog-outputlen = 15.

      fieldcatalog-do_sum = 'X'. "Display column total

      fieldcatalog-datatype = 'CURR'.

      append fieldcatalog to fieldcatalog.

      clear fieldcatalog.

      fieldcatalog-fieldname = 'PEINH'.

      fieldcatalog-seltext_m = 'Price Unit'.

      fieldcatalog-col_pos = 8.

      append fieldcatalog to fieldcatalog.

      clear fieldcatalog.

      endform. " BUILD_FIELDCATALOG

      &----


      *& Form BUILD_LAYOUT

      &----


      • Build layout for ALV grid report

      ----


      form build_layout.

      gd_layout-box_fieldname = 'SEL'.

      "set field name to store row selection

      gd_layout-edit = 'X'. "makes whole ALV table editable

      gd_layout-zebra = 'X'.

      • gd_layout-no_vline = 'X'.

      gd_layout-window_titlebar = ' LAYOUT TITLE'.

      • gd_layout-confirmation_prompt = 'X'.

      • gd_layout-detail_popup = 'X'.

      endform. " BUILD_LAYOUT

      &----


      *& Form DISPLAY_ALV_REPORT

      &----


      • Display report using ALV grid

      ----


      form display_alv_report.

      gd_repid = sy-repid.

      call function 'REUSE_ALV_GRID_DISPLAY'

      exporting

      i_callback_program = gd_repid

      I_BACKGROUND_ID = 'SIWB_WALLPAPER'

      • i_callback_top_of_page = 'TOP-OF-PAGE'

      • i_callback_user_command = 'DISPLAY'

      i_grid_title = 'EMPLOYEE REPORTING'

      is_layout = gd_layout

      it_fieldcat = fieldcatalog[]

      IT_EVENTS = GT_EVENTS

      i_save = 'X'

      is_variant = VAR

      tables

      t_outtab = it_ekko.

      endform. " DISPLAY_ALV_REPORT

      &----


      *& Form DATA_RETRIEVAL

      &----


      • Retrieve data form EKPO table and populate itab it_ekko

      ----


      form data_retrieval.

      select ebeln ebelp statu aedat matnr menge meins netpr peinh

      up to 10 rows from ekpo

      into corresponding fields of table it_ekko.

      endform. " DATA_RETRIEVAL

      reward if it helps.

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.