ALV Grid Layouts - Setting them user-specific

Hi everybody -
I am using the ALV grid layout for a report using function module REUSE_ALV_GRID_DISPLAY.  There are a number of fields that are not immediately viewed on screen - they are in hide mode within the field catalog.  We want to allow the users to add them / remove them from the report using an ALV variant.
I can allow the users to add/remove with a layout variant no problem - but I am having an issue allowing them to save the variant that they are using to view the data, as user-specific.  For whatever reason, they are only allowed to save their layout variants as global - the "User-specific" box is grayed out.
Does anyone know how I can get the "User Specific" box to be NOT grayed out within an ALV grid?
Thanks!
Abby

Set the I_SAVE parameter to 'U' in your function call.
Regards
Rich Heilman

Similar Messages

  • Alv grid layout display in 2 pages

    Hi All,
    I am presently working in ALV programming.
    The client requierment is "GL line items and summary sheet will be listed in separate pages."
    i am dispalying the output using ALV grid layout display.
    Can you please conform that how to write logic for summary sheet.that will display after the line items and also saparate page.
    Thanks,
    Sridhar

    Hi ,
          Use event END OF PAGE .
    Write a Form for end of page
    then do calcualtions.
    Reward if useful.

  • Apex 4.2 theme 25 grid layout setting.

    Hi
    I know this is silly question but i had to ask you because i have i tried enough , i have done this before but it not working for me right now. :(
    I have 4 region on page .
    Region 1 Grid Layout
    Start New Row     Yes
    Column          Automatic     
    Column Span     Automatic     Region 2 Grid Layout
    Start New Row     Yes
    Column          1
    Column Span     4Region 3 Grid Layout
    Start New Row     NO
    Column          5
    Column Span     4Region 4 Grid Layout
    Start New Row     YES
    Column          1
    Column Span     8In Region 4 I have 11 number field items with setting.
    New Line YES
    New Field YES
    Width 11
    Height 1
    Column Span null(default)
    Row Span    null(default) I want to arrange first 6 in column 1 last 5 in column 5
    I played around the setting by changing column on item to start with 1 and 5 respectively and and set the NO to start new row.
    But it justs move little away to right not really to actual 5 column in grid.
    Your Input is appreciated.
    Thanks

    BUG in 4.1 application theme 25

  • Alv grid layout as default.

    In an alv grid you can personalize the layout (Change layout, save layout). Is it possible to somehow add this saved layout to the report so that it will be shown as the defaylt layout for eveyone that runs the report?
    Best Regards Claes

    Hello Rich Heilman and thank you for your help.
    I solved the problem as you suggested in the first example. This has worked great but now i need to set different layouts depending of what the user chooses. This i have not solved yet.
    Is there anything else that I need to do except create the layouts with those names <i>/Y23HPAREsum</i> and <i>Y23HPAREind</i> as you se in the code below?
    data:  variant type disvariant.
           variant-report = sy-repid.
      if p_sum eq 'X'.
           variant-VARIANT = '<i>/Y23HPAREsum</i>'.
           else.
           variant-VARIANT = '<i>Y23HPAREind</i>'.
      endif.
    form reuse_alv_list_display.
      data : l_repid like sy-repid.
      move sy-repid to l_repid.
      call function 'REUSE_ALV_GRID_DISPLAY'
        exporting
          i_callback_program     =   l_repid
          i_callback_top_of_page =   st_formname_top_of_page
          it_fieldcat            =   st_fieldcat[]
            i_save               =   'X'
            is_variant           =   variant
        tables
          t_outtab               = lt_rec.
    endform.                               " REUSE_ALV_LIST_DISPLAY
    Best Regards Claes

  • Layout is it User-specific or Standard ?

    I have an ALV report that contains user specific layout and standard layout. My question is if user enters the layout name in the selection screen . i wanted to know whether the layout is user-specific or standard layout.
    How we can differentiate this ?

    Layouts can be saved for specific users or for all users.
    User-specific layouts are only visible to the users who have created them.
    Layouts for all users can be selected by all users. These layouts always start with a forward slash in the name (for example,  /Standard).
    The layouts are report-dependent and you can only create, change or delete them within the display of the respective ALV list. User-specific layouts can only be changed or deleted by the user who created them.
    To save layouts for all users, you need the authorization S_ALV_LAYO with activity 23 as of Release 4.6C. You can only go to the layout administration if you have this authorization.
    You must maintain the authorization object S_ALV_LAYO using the user administration.
    If you would like to use or save the Excel view in your layout, you also require the additional authorization S_BDS_DS with activity 01,02,03,06,30; CLASSNAME ALVLAYOUTTEMPLATES and CLASSTYPE OT.
    Furthermore, there are applications that have their own authorization checks installed.
    In some ALV lists, you can only save user-specific layouts. In these cases, the indicator "user-specific" is active , on a grey background and unable to be changed. This is related to the parameter I_SAVE. This controls which options you have to save the layout.
    To be able to define default layouts, the parameter I_DEFAULT must have the value 'X'.
    Notes 409190 and 601803 also provide further information on authorizations.
    For further details ..
    check saptechies.com
    Regards
    Manthan.

  • How to download only some fields(dynamically) from alv grid layouts

    I have ALV grid list.
    I have layouts for selecting sets of fields dynamically.
    If I select a particular layout, I want to download only those fields into an Excel sheet.
    If I select another layout, I want to download only fields of that layout , into an Excel sheet.
    Can u plz write examples.
    Narendra

    Hello ,
    Here it is.
      FIELD-SYMBOLS <FS> TYPE ANY.
      DATA: GR_ATTACHMENT TYPE Z48S3_ATTACHMENT,
            GT_ATTACHMENT TYPE Z48S3_ATTACHMENT_TAB,
            L_F_TITLE     TYPE SO_OBJ_DES,
            L_R_FIELDCAT  LIKE LINE OF GT_FIELDCAT,
            L_F_FIELD     LIKE L_R_FIELDCAT-FIELDNAME,
            L_F_EMAILID   TYPE Z48S3_RECEIVER,
            L_F_FIRST     TYPE C.
      IF SY-SYSID EQ G_C_DEV_SYSTEM OR
         SY-SYSID EQ G_C_QUA_SYSTEM.
        CONCATENATE SY-SYSID '/' SY-MANDT ':' INTO L_F_TITLE.
        CONDENSE L_F_TITLE.
        CONCATENATE L_F_TITLE SY-TITLE INTO L_F_TITLE SEPARATED BY SPACE.
      ELSE.
        L_F_TITLE = SY-TITLE.
      ENDIF.
      G_R_VARIANT-REPORT = SY-REPID.
      G_R_VARIANT-VARIANT = P_VARIAN.
      CALL FUNCTION 'REUSE_ALV_VARIANT_SELECT'
           EXPORTING
                I_DIALOG            = 'N'
                I_USER_SPECIFIC     = 'A'
                I_DEFAULT           = 'X'
                IT_DEFAULT_FIELDCAT = G_T_FIELDCAT
                I_LAYOUT            = GR_LAYOUT
           IMPORTING
                ET_FIELDCAT         = G_T_FIELDCAT
                ES_LAYOUT           = GR_LAYOUT
           CHANGING
                CS_VARIANT          = G_R_VARIANT
           EXCEPTIONS
                ERROR_MESSAGE       = 4
                OTHERS              = 4.
      SORT G_T_FIELDCAT BY COL_POS.
      PERFORM CREATE_EXCEL_ATTM_HEADING_ROW TABLES GT_ATTACHMENT
                                                   G_T_FIELDCAT.
      LOOP AT G_T_ALVLIST.
        L_F_FIRST = 'X'.
        LOOP AT G_T_FIELDCAT INTO L_R_FIELDCAT WHERE NO_OUT IS INITIAL.
          CLEAR GR_ATTACHMENT-XNEWLINE.
          IF NOT L_F_FIRST IS INITIAL.
            GR_ATTACHMENT-XNEWLINE = 'X'.
            CLEAR L_F_FIRST.
          ENDIF.
          CLEAR L_F_FIELD.
          CONCATENATE 'G_T_ALVLIST-' L_R_FIELDCAT-FIELDNAME
                 INTO L_F_FIELD.
          CONDENSE L_F_FIELD.
          ASSIGN (L_F_FIELD) TO <FS>.
          WRITE <FS> TO GR_ATTACHMENT-FIELDVALUE.
          UNASSIGN <FS>.
          APPEND GR_ATTACHMENT TO GT_ATTACHMENT.
        ENDLOOP.
      ENDLOOP.
    Regards,
    Vasanth

  • How to use Style in LVC_S_LAYO (ALV Grid Layout)

    Hi Experts,
    I am trying to set field 'STYLEFNAME' of LVC_S_LAYO while setting up layout for ALV GRID using 'SET_TABLE_FOR_FIRST_DISPLAY' . I'm passing the field name contain the styles for each row. I am setting it in the same way we set 'INFO_FNAME' by passing color field name for coloring the rows. Styles are available in include <CL_ALV_CONTROL> .
    Please note styles are working properly when I am setting it at field cat level by setting fieldcat field LVC_S_FCAT-STYLE. But set sets style for entire column. I want to set style for few rows. I want to use style 'ALV_STYLE_BUTTON' .
    Please advice how to do this.
    Regards,
    Sushant.

    I'll try to understand your question.
    You have a 'new-style' alv and want to show some fields as pushbutton.
    To make a cell to be displayed as a pushbutton, we have two steps.
    Firstly, insert a new inner table of type u201CLVC_T_STYLu201D into your list data table.
    *--- Internal table holding list data
    DATA BEGIN OF gt_list OCCURS 0 .
    INCLUDE STRUCTURE SFLIGHT .
    DATA rowcolor(4) TYPE c .
    DATA cellcolors TYPE lvc_t_scol .
    DATA carrid_handle TYPE int4 .
    DATA connid_handle TYPE int4 .
    DATA cellstyles TYPE lvc_t_styl .
    DATA END OF gt_list .
    Fill this inner table for each field to be displayed as pushbutton.
    DATA ls_style TYPE lvc_s_styl .
    READ TABLE gt_list INDEX 7 .
    ls_style-fieldname = 'SEATSMAX' .
    ls_style-style = cl_gui_alv_grid=>mc_style_button .
    APPEND ls_style TO gt_list-cellstyles .
    MODIFY gt_list INDEX 7 .
    As usual, we state our list data table field related with styles in the layout structure at field u2018STYLEFNAMEu2019.
    e.g. ps_layout-stylefname = 'CELLSTYLES' .
    Button click event is handled like hotspot click via the event u201Cbutton_clicku201D through its parameters u201Ces_col_idu201D and u201Ces_row_nou201D which contain the address of the clicked pushbutton cell.

  • Grid Layout in theme 26

    Hi,
    I am using Oracle Apex 4.2.1
    I have been following a Youtube Video from Oracle Learning: http://www.youtube.com/watch?v=dPgQZTsdSBI
    The video demonstrates an example of grid layout for regions. The layout has 12 columns and and 4 regions, the regions using 3 columns each. In the video the regions align perfectly.
    I have tried to recreate this in theme 26 but it does not work. I have set theme 26 to reference the page templates for theme 25. However, this does not work and the regions appear next to each other using 1 grid each with no spacing.
    Any ideas on how to fix this in theme 26?
    Thanks,
    JIM

    JIM wrote:
    Hi,
    I am using Oracle Apex 4.2.1
    I have been following a Youtube Video from Oracle Learning: http://www.youtube.com/watch?v=dPgQZTsdSBI
    The video demonstrates an example of grid layout for regions. The layout has 12 columns and and 4 regions, the regions using 3 columns each. In the video the regions align perfectly. The video demonstration uses theme 25, which has page templates set up for a CSS grid system with 12 fixed-width columns.
    I have tried to recreate this in theme 26 but it does not work.The theme 26 page templates are configured to use HTML table layout with a dynamic, variable number of columns. HTML tables expand to fit their contents, so the width of the columns is also variable.
    I have set theme 26 to reference the page templates for theme 25.Don't know what you mean by this. Please explain in more detail.
    However, this does not work and the regions appear next to each other using 1 grid each with no spacing.
    Any ideas on how to fix this in theme 26?Basically there's nothing to "fix". This is how the table-based layout used in theme 26 works. The regions only appear to use "1 grid each" because their content is all the same size. If you add different content to the regions (as I have) then the table columns change width to fit it. You could use CSS to apply fixed widths to the columns, but that kind of defeats the purpose of using table-based layout.
    The themes in APEX 4.2 don't appear to specify spacing between regions when using HTML table layout, but this can be controlled using CSS.
    Why are you trying to use theme 26 rather than theme 25 as shown in the video demo? They don't look that different.

  • Layout in Report: User Specific Indicator

    Hi Friends,
    I want to remove the "user Specific" Indicator from my layout and make it global but this indicator is in display mode. How can i do it? Please advice.
    Regards,
    CK

    Hi
    Which report are you refering to?
    Regards
    Sidi

  • Setting OMCQ User specific.

    Hi All,
    Transaction OMCQ is used to set the error messages in SAP standerd applications but I want to make it user specific, though in OSS Note 935755 SAP has suggested to work with this transaction by making it user specific , but steps  are not given, Can any body suggest me how to make it user specific.
    Regards,
    Sifath...

    Hi
    You have to create a version for the actual message by copying the same.
    Example:
    Copy the following message
    <b>Verson   Application area    Mesaage
    00                 06                     042</b>
    as
    <b>01                 06                     042 </b>
    and against this message assign user specific message like error or warning.
    Assign this version number to user parameter MSV in user settings.By defining different versions and assigning this number to users , we can configure user specific messages.
    I think this will solve your problem.
    Regards
    Ramakrishna

  • ALV Grid OO : Set Field editable for  selected rows

    Hello ABAPers,
    I used object  cl_gui_alv_grid to created ALV grid and i succed to set an editable
    field for all rows. However my request is to set it for and only for selected rows
    I could get the row index but i didn't know how to use it
    Thanks in advance
    Amine

    Hi Amine,
    I think the standard SAP sample program might help you, BCALV_EDIT_02.
    I will tell the procedure to make the selected rows editable on ALV.
    1. Add a additional field of type LVC_T_STYL in the internal table that you are displaying in the ALV. LVC_T_STYL is a actually a table type.
    2. Place a button on the ALV toolbar for EDIT/DISPLAY.
    3. Once you press the EDIT button after selecting the rows, loop through the records which you have selected (you have already said that you have the index of selected records).
    4. The table type LVC_T_STYL has fields for FIELDNAME and STYLE.
       If you have 10 fields in the internal table, then all these ten fields name should be appended to the newly added field in the internal table (LVC_T_STYL) and their style should be populated with value cl_gui_alv_grid=>mc_style_enabled.
    Regards,
    Rahul MB

  • Sending the rows in an ALV grid chosen by the user  to another report

    Hello Experts!
    I am facing a problem with respect to ALV grid using OOABAP.
    I am displaying an ALV grid. The user selects a few rows from this grid and clicks on a button called "Update" which i have incorporated into the grid.
    Once the user clicks on update, i should call another report passing only the rows selected by the user. I am using the method "get_selected_rows" do get the indices of the rows selected. But, i am unable to proceed from here. How do i incorporate this logic in my code? Can anyone give me some sample code?
    Thanks and Regards,
    Smitha

    Hi Smitha
    Get the rows of the ALV into an internal table . You are right in using the method GET_SELECTED_ROWS.
    Suppose li_tab is the internal table in which you have the rows of ALV.
    Write this statement in the report from which you are transporting.
    EXPORT li_tab TO MEMORY ID sy-repid.
    Write this statement in the report to which you are transporting.
    IMPORT sel_tab = li_tab FROM MEMORY ID 'Z_Report_Name'.
    hope it works.
    Reward points if helpful.

  • Problem with ALV GRID layout

    Hi friends
    really need yours help
    I have to show an ALV grid with checkbox as first column.
    This checkbox is based on internal table condition may be enabled or disabled, other columns are disabled.
    I used the structure 'ZMESD' where i decleared that checkbox field.
    I called function module:
    CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
        EXPORTING
          i_structure_name   = 'ZMESD'
          i_bypassing_buffer = 'X'
        CHANGING
          ct_fieldcat        = it_fieldcat[].
      x_fieldcat-seltext_s = 'CheckBox'.
      x_fieldcat-checkbox  = 'X'.      " Display this field as a
      x_fieldcat-edit      = 'X'.     " You can specify the width of a
      MODIFY it_fieldcat FROM x_fieldcat TRANSPORTING seltext_s checkbox
    edit WHERE fieldname = 'CHK' .
    Now the problem is, I want to use
    "REUSE_ALV_GRID_DISPLAY", where I am using
    is_layout  = x_layout
    and value of x_layout is filled based on condition as follows
      LOOP AT gt_grid INTO ls_outtab.
        DATA l_tabix TYPE i.
        IF ls_outtab-status = 'Reserved'.  "This is the condition for which checkbox is disabled
          l_tabix = sy-tabix.
          REFRESH lt_edit.
          ls_edit-fieldname = 'CHK'.
          ls_edit-style = cl_gui_alv_grid=>mc_style_disabled.
          ls_edit-style2 = space.
          ls_edit-style3 = space.
          ls_edit-style4 = space.
          ls_edit-maxlen = 10.
          APPEND ls_edit TO lt_edit.
          APPEND LINES OF lt_edit TO ls_outtab-handle_style.
          MODIFY gt_grid INDEX l_tabix FROM ls_outtab  TRANSPORTING
                                            handle_style .
        ENDIF.
      ENDLOOP.
    Now I finally i m using:
      <b>x_layout-lights_tabname = 'handle_style'.</b>
    but its giving dump.
    I am sure its only because i havent found the corrosponding X_layout field for 'handle_event'.
    Please help me, as its urgent.
    Points ll be awarded for sure.

    Thank you friends
    I got the answer.
    I used function module
    CALL FUNCTION <b>'LVC_FIELDCATALOG_MERGE</b>'
       EXPORTING
      I_BUFFER_ACTIVE              =
         i_structure_name             = 'ZMESD'
      I_CLIENT_NEVER_DISPLAY       = 'X'
         i_bypassing_buffer           = 'X'
      I_INTERNAL_TABNAME           =
        CHANGING
          ct_fieldcat                  = it_fieldcat[].
    EXCEPTIONS
      INCONSISTENT_INTERFACE       = 1
      PROGRAM_ERROR                = 2
      OTHERS                       = 3
    Its solved the problem

  • ALV Grid merge cells horizontally for specific record

    Hi Experts,
    We have a requirement regarding ALV Grid developement.
    In ALV Grid, we will have multiple records as normal output.
    Output will be as below.
    In that, we need Summery Text should be in from Field 2 * to*  Field 6 as a single Cell and below that all output
    will be normal each cell wise.
    That Summery will come for each new Field1.
    OUTPUT
    Field1  Field2  Field3    Field4  Field5  Field6  Field7   Field8   Field9
    001  | . ....      ..        ..  Summery  ........... |  10   |  20      |  30
    001  |  10   |    20  |     30  |   40   |    50  |   60 |    70  |   80     |
    001  |  10   |    20  |     30  |   40   |    50  |   60 |    70  |   80     |
    001  |  10   |    20  |     30  |   40   |    50  |   60 |    70  |   80     |
    001  |  10   |    20  |     30  |   40   |    50  |   60 |    70  |   80     |
    Thanks & regards
    Manglesh

    Hi Manglesh,
    sorry ALV is not as flexible as Excel may be.
    You can only define a header in that way but it would be above the column headings.
    The ALV table display allows only to change the width of the whole column.
    Regards,
    Clemens

  • "alv grid" layout as default does not work

    I created a layout for my ALV and saved it. It is supossed to appear as default but every time I restart the ALV the layout is gone and I have to select it again. Do I have to do something else besides putting it as default in the "Layout choose" selection? Thanks in advance.

    Hello,
    Did you pass the parameters: IS_LAYOUT & I_SAVE to the ALV function module?
      FP_ST_LAYOUT-ZEBRA = C_X.
      FP_ST_LAYOUT-COLWIDTH_OPTIMIZE = C_X.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM       = SY-REPID
          IS_LAYOUT                = FP_ST_LAYOUT
          IT_FIELDCAT              = FP_IT_FIELDCAT
          I_SAVE                   = 'A'
        TABLES
          T_OUTTAB                 = FP_IT_OUTPUT
        EXCEPTIONS
          PROGRAM_ERROR            = 1
          OTHERS                   = 2.
      IF SY-SUBRC <> 0.
    *   Error in calling Standard ALV Functional Module
        MESSAGE I019. "Error Occured in ALV Function Module
        LEAVE LIST-PROCESSING.
      ENDIF.
    Hope this helps.
    BR,
    Suhas

Maybe you are looking for