<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: ALV Grid editable cells in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804390#M1680526</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/797/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt; very simple idea indeed , thx &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/797/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt; but is not really what I wanted. Modifying edit from fieldcatalog just makes the entire column ready for input.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you all guys for the materials. They are really helpful and i'll try to see if now i can make my program work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Alexandru F&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 20 Jun 2012 06:14:15 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2012-06-20T06:14:15Z</dc:date>
    <item>
      <title>ALV Grid editable cells</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804386#M1680522</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Howdy pros,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've stumbled upon a problem. I want to make some of my alv cells editable.&lt;/P&gt;&lt;P&gt;I've build my alv with &lt;STRONG&gt;cl_gui_alv_grid&lt;/STRONG&gt;. ( so no salv or function alv ).&lt;/P&gt;&lt;P&gt;This is exercise purpose only.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I know i can make fields of my alv editable by using my field_catalog ( &lt;STRONG&gt;field_catalog&lt;SPAN class="L0S70"&gt;-&lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;edit &lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;=&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN class="L0S55"&gt; &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'X'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt; ) and it works fine with this.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;But how can i use the layout to do this? ( how can i edit only one row, like when i want to add a new one and it becomes ready for input and after i save the new row it becomes unable to edit )&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;I've found some useful stuff but i think i'm still missing something.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;1) I've added to my data_table&amp;nbsp; a new field &lt;STRONG&gt;cellstyles&lt;/STRONG&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;In a loop have filled the fileds &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;STRONG&gt;style &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;cl_gui_alv_grid&lt;SPAN class="L0S70"&gt;=&amp;gt;&lt;/SPAN&gt;mc_style_enabled&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt; &lt;STRONG&gt;fieldname &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'FIELDNAME'&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S33"&gt;( in debuger i can see that it takes the values i passed. ( i think style get 008000 ))&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S33"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;2) I've added the gs_layout-&lt;/SPAN&gt; stylefname &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'CELLTAB'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;3) I call this method after &lt;STRONG&gt;set_table_for_first_display&lt;/STRONG&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;SPAN class="L0S52"&gt;CALL &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;METHOD &lt;/SPAN&gt;go_alvgrid&lt;SPAN class="L0S70"&gt;-&amp;gt;&lt;/SPAN&gt;set_ready_for_input&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;EXPORTING&lt;/SPAN&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i_ready_for_input &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S32"&gt;1&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="L0S55"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;So my question is, did i missed anything else?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Jun 2012 13:51:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804386#M1680522</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2012-06-19T13:51:24Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Grid editable cells</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804387#M1680523</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The below link may help you with the very relative info. Just go through it.&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" class="active_link" href="https://answers.sap.com/blogs/dayakarsama/2012/06/01/oo-alv-with-check-boxes-icon-and-popup-message-to-modify-the-output-at-runtime" title="http://scn.sap.com/blogs/dayakarsama/2012/06/01/oo-alv-with-check-boxes-icon-and-popup-message-to-modify-the-output-at-runtime"&gt;http://scn.sap.com/blogs/dayakarsama/2012/06/01/oo-alv-with-check-boxes-icon-and-popup-message-to-modify-the-output-at-runtime&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;sama&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 19 Jun 2012 14:47:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804387#M1680523</guid>
      <dc:creator>dayakar_sama</dc:creator>
      <dc:date>2012-06-19T14:47:54Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Grid editable cells</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804388#M1680524</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This wiki sample will help you a lot.&lt;/P&gt;&lt;P&gt;&lt;A href="http://wiki.sdn.sap.com/wiki/display/Snippets/ALV+-+Editable+grid+control"&gt;ALV - Editable grid control&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Jake&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Jun 2012 04:12:12 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804388#M1680524</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2012-06-20T04:12:12Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Grid editable cells</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804389#M1680525</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can do it in this way.. Hope it will be simple to you..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. You add a new&amp;nbsp; column in your alv - say Status with Char(1).&lt;/P&gt;&lt;P&gt;2. When you display the ALV first time - This status field should have value 'X'.&lt;/P&gt;&lt;P&gt;3. When you add a new entry - this Status field wil be BLANK..&lt;/P&gt;&lt;P&gt;4. When you save. you put Status value to 'X'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the Field catalog specification,&amp;nbsp; Put if statement....&amp;nbsp; If Status feld is NE 'X' then editable else No..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Venkat&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Jun 2012 04:40:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804389#M1680525</guid>
      <dc:creator>venkateswaran_k</dc:creator>
      <dc:date>2012-06-20T04:40:52Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Grid editable cells</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804390#M1680526</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/797/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt; very simple idea indeed , thx &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/797/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt; but is not really what I wanted. Modifying edit from fieldcatalog just makes the entire column ready for input.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you all guys for the materials. They are really helpful and i'll try to see if now i can make my program work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Alexandru F&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Jun 2012 06:14:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804390#M1680526</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2012-06-20T06:14:15Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Grid editable cells</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804391#M1680527</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yep it helped me &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/797/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt; &lt;/P&gt;&lt;P&gt;I found my mistake&lt;/P&gt;&lt;P&gt;I had my new field 'cellstyle', but when i declared my layout style a had:&lt;/P&gt;&lt;P&gt;gs_layout&lt;SPAN class="L0S70"&gt;-&lt;/SPAN&gt;stylefname &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'CELLTAB'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;So it could not recognize what modification i was requesting &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/797/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Jun 2012 07:44:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/8804391#M1680527</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2012-06-20T07:44:10Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Grid editable cells</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/14113534#M2041918</link>
      <description>&lt;LI-CODE lang="abap"&gt;Editable ALV Report with Row-Based Selection Using LVC_ROWMARK
*---------------------------------------------------------------------*
* CLASS Event Handler for Double Click
*---------------------------------------------------------------------*
CLASS LCL_EVENTS DEFINITION.
PUBLIC SECTION.
METHODS:on_edit_button for EVENT user_command of CL_GUI_ALV_GRID.
ENDCLASS.

*---------------------------------------------------------------------*
* START-OF-SELECTION
*---------------------------------------------------------------------*
START-OF-SELECTION.
data(obj_lcl) = new LCL_EVENTS( ).
CALL SCREEN 200.
*---------------------------------------------------------------------*
* SCREEN 200 - Header Screen
*---------------------------------------------------------------------*
MODULE STATUS_0200 OUTPUT.
SET PF-STATUS 'ZSTANDARD'.
PERFORM LOAD_HEADER_DATA.
ENDMODULE.

MODULE USER_COMMAND_0200 INPUT.
CASE SY-UCOMM.
WHEN 'BACK'. LEAVE PROGRAM.
WHEN 'SAVE'.
PERFORM SAVE_HEADER_DATA.
WHEN 'EDIT'. " New custom function code for edit
OBJ_LCL-&amp;gt;ON_EDIT_BUTTON( ).
ENDCASE.
ENDMODULE.

FORM LOAD_HEADER_DATA.
SELECT VBELN ERNAM ERDAT VSTEL VKORG
INTO CORRESPONDING FIELDS OF TABLE GT_LIKP
FROM ZDB_EDIT_ALV
WHERE VBELN IN S_VBELN.

PERFORM INIT_CELL_STYLES CHANGING GT_LIKP.

PERFORM BUILD_FIELDCATALOG USING GT_FCAT1 'HEADER'.

IF O_CONT1 IS INITIAL.
CREATE OBJECT O_CONT1 EXPORTING CONTAINER_NAME = 'CONTAINER1'.
CREATE OBJECT O_GRID1 EXPORTING I_PARENT = O_CONT1.

GS_LAYOUT-STYLEFNAME = 'CELLTAB'.
GS_LAYOUT-SEL_MODE = 'D'.
GS_LAYOUT-NO_TOOLBAR = 'X'.

CALL METHOD O_GRID1-&amp;gt;SET_TABLE_FOR_FIRST_DISPLAY
EXPORTING IS_LAYOUT = GS_LAYOUT
CHANGING IT_OUTTAB = GT_LIKP
IT_FIELDCATALOG = GT_FCAT1.

SET HANDLER OBJ_LCL-&amp;gt;ON_EDIT_BUTTON FOR O_GRID1.

ELSE.
CALL METHOD O_GRID1-&amp;gt;REFRESH_TABLE_DISPLAY
EXPORTING IS_STABLE = VALUE LVC_S_STBL( ROW = 'X' COL = 'X' ).
ENDIF.
ENDFORM.

FORM SAVE_HEADER_DATA.
CALL METHOD O_GRID1-&amp;gt;CHECK_CHANGED_DATA.
LOOP AT GT_LIKP INTO GS_LIKP.
UPDATE ZDB_EDIT_ALV SET
ERDAT = GS_LIKP-ERDAT
VSTEL = GS_LIKP-VSTEL
VKORG = GS_LIKP-VKORG
WHERE VBELN = GS_LIKP-VBELN AND ERNAM = GS_LIKP-ERNAM.
ENDLOOP.
COMMIT WORK.
MESSAGE 'Header data saved successfully' TYPE 'S'.
"Optional: Reset editable row
CLEAR GV_EDIT_ROW_INDEX.
ENDFORM.

*---------------------------------------------------------------------*
* Form: INIT_CELL_STYLES
*---------------------------------------------------------------------*
FORM INIT_CELL_STYLES CHANGING PT_TABLE TYPE STANDARD TABLE.
FIELD-SYMBOLS: &amp;lt;ROW&amp;gt; TYPE TY_ZDB_EDIT_ALV.

DATA: LT_DISABLED_FIELDS TYPE LVC_T_STYL,
LS_STYLE TYPE LVC_S_STYL.

CLEAR LT_DISABLED_FIELDS.

INSERT VALUE #( FIELDNAME = 'VBELN' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_DISABLED ) INTO TABLE LT_DISABLED_FIELDS.
INSERT VALUE #( FIELDNAME = 'ERNAM' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_DISABLED ) INTO TABLE LT_DISABLED_FIELDS.
INSERT VALUE #( FIELDNAME = 'ERDAT' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_DISABLED ) INTO TABLE LT_DISABLED_FIELDS.
INSERT VALUE #( FIELDNAME = 'VSTEL' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_DISABLED ) INTO TABLE LT_DISABLED_FIELDS.
INSERT VALUE #( FIELDNAME = 'VKORG' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_DISABLED ) INTO TABLE LT_DISABLED_FIELDS.

LOOP AT PT_TABLE ASSIGNING &amp;lt;ROW&amp;gt;.
&amp;lt;ROW&amp;gt;-CELLTAB = LT_DISABLED_FIELDS.
ENDLOOP.
ENDFORM.

FORM BUILD_FIELDCATALOG USING PT_FCAT TYPE LVC_T_FCAT P_TYPE.
DATA: LS_FCAT TYPE LVC_S_FCAT.

CLEAR PT_FCAT.

IF P_TYPE = 'HEADER'.
CLEAR LS_FCAT.

LS_FCAT-FIELDNAME = 'VBELN'. LS_FCAT-COLTEXT = 'Delivery'. "LS_FCAT-MARK = 'X' .
APPEND LS_FCAT TO PT_FCAT.

LS_FCAT-FIELDNAME = 'ERNAM'. LS_FCAT-COLTEXT = 'Created By'. APPEND LS_FCAT TO PT_FCAT.

LS_FCAT-FIELDNAME = 'ERDAT'. LS_FCAT-COLTEXT = 'Created On'. LS_FCAT-EDIT = 'X'. APPEND LS_FCAT TO PT_FCAT.

LS_FCAT-FIELDNAME = 'VSTEL'. LS_FCAT-COLTEXT = 'Shipping Point'. LS_FCAT-EDIT = 'X'. APPEND LS_FCAT TO PT_FCAT.

LS_FCAT-FIELDNAME = 'VKORG'. LS_FCAT-COLTEXT = 'Sales Org'. LS_FCAT-EDIT = 'X'. APPEND LS_FCAT TO PT_FCAT.

ENDFORM.

CLASS LCL_EVENTS IMPLEMENTATION.

METHOD ON_EDIT_BUTTON.
FIELD-SYMBOLS: &amp;lt;LS_ROW&amp;gt; TYPE TY_ZDB_EDIT_ALV.

DATA: LT_STYLE TYPE LVC_T_STYL,
LS_STYLE TYPE LVC_S_STYL,
LT_MARKED_ROWS TYPE LVC_T_ROW,
LS_ROW_MARK TYPE LVC_S_ROW,
lt_temp TYPE TABLE OF TY_ZDB_EDIT_ALV.

CLEAR: GV_EDIT_ROW_INDEX.

CALL METHOD O_GRID1-&amp;gt;GET_SELECTED_ROWS
IMPORTING ET_INDEX_ROWS = LT_MARKED_ROWS.

READ TABLE LT_MARKED_ROWS INTO LS_ROW_MARK INDEX 1.
IF SY-SUBRC = 0.
GV_EDIT_ROW_INDEX = LS_ROW_MARK-INDEX.
ENDIF.
LT_TEMP = GT_LIKP.
LOOP AT LT_TEMP ASSIGNING &amp;lt;LS_ROW&amp;gt; FROM 1.
CLEAR LT_STYLE.

" Always disable primary keys
INSERT VALUE #( FIELDNAME = 'VBELN' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_DISABLED ) INTO TABLE LT_STYLE.
INSERT VALUE #( FIELDNAME = 'ERNAM' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_DISABLED ) INTO TABLE LT_STYLE.

IF SY-TABIX = GV_EDIT_ROW_INDEX.
" Selected row – enable non-primary key fields
INSERT VALUE #( FIELDNAME = 'ERDAT' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_ENABLED ) INTO TABLE LT_STYLE.
INSERT VALUE #( FIELDNAME = 'VSTEL' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_ENABLED ) INTO TABLE LT_STYLE.
INSERT VALUE #( FIELDNAME = 'VKORG' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_ENABLED ) INTO TABLE LT_STYLE.
ELSE.
" Other rows – disable all fields
INSERT VALUE #( FIELDNAME = 'ERDAT' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_DISABLED ) INTO TABLE LT_STYLE.
INSERT VALUE #( FIELDNAME = 'VSTEL' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_DISABLED ) INTO TABLE LT_STYLE.
INSERT VALUE #( FIELDNAME = 'VKORG' STYLE = CL_GUI_ALV_GRID=&amp;gt;MC_STYLE_DISABLED ) INTO TABLE LT_STYLE.
ENDIF.
&amp;lt;LS_ROW&amp;gt;-CELLTAB = LT_STYLE.
MODIFY GT_LIKP FROM &amp;lt;LS_ROW&amp;gt; INDEX SY-TABIX.
ENDLOOP.

O_GRID1-&amp;gt;REFRESH_TABLE_DISPLAY( ).

CALL METHOD O_GRID1-&amp;gt;SET_TABLE_FOR_FIRST_DISPLAY
EXPORTING IS_LAYOUT = GS_LAYOUT
CHANGING IT_OUTTAB = GT_LIKP
IT_FIELDCATALOG = GT_FCAT1.

GS_LAYOUT-STYLEFNAME = 'CELLTAB'.
GS_LAYOUT-SEL_MODE = 'D'.
GS_LAYOUT-NO_TOOLBAR = 'X'.

ENDMETHOD.

ENDCLASS.&lt;/LI-CODE&gt;&lt;H5&gt;&lt;STRONG&gt;Editable ALV Report with Row-Based Selection Using LVC_ROWMARK&lt;/STRONG&gt;&lt;/H5&gt;&lt;H5&gt;&lt;STRONG&gt;Description&lt;/STRONG&gt;:&lt;BR /&gt;This ABAP report implements a &lt;STRONG&gt;two-screen ALV-based editable interface&lt;/STRONG&gt; using CL_GUI_ALV_GRID. It features:&lt;/H5&gt;&lt;UL&gt;&lt;LI&gt;&lt;H5&gt;&lt;STRONG&gt;Display and editing of delivery header data&lt;/STRONG&gt; from the custom table ZDB_EDIT_ALV.&lt;/H5&gt;&lt;/LI&gt;&lt;LI&gt;&lt;H5&gt;&lt;STRONG&gt;Row-based selection using LVC_ROWMARK&lt;/STRONG&gt;: Users can select a row and click the EDIT button to enable editing for non-primary key fields (ERDAT, VSTEL, VKORG) on the selected row only.&lt;/H5&gt;&lt;/LI&gt;&lt;LI&gt;&lt;H5&gt;&lt;STRONG&gt;Primary key fields (VBELN, ERNAM) remain non-editable&lt;/STRONG&gt; to ensure data integrity.&lt;/H5&gt;&lt;/LI&gt;&lt;LI&gt;&lt;H5&gt;&lt;STRONG&gt;Editable cell behavior is controlled via the CELLTAB mechanism&lt;/STRONG&gt;, dynamically applied based on user selection.&lt;/H5&gt;&lt;/LI&gt;&lt;LI&gt;&lt;H5&gt;&lt;STRONG&gt;Toolbar function ‘EDIT’&lt;/STRONG&gt; is handled via a custom event method (ON_EDIT_BUTTON).&lt;/H5&gt;&lt;/LI&gt;&lt;LI&gt;&lt;H5&gt;&lt;STRONG&gt;Data is updated in the database table upon clicking ‘SAVE’. Help me out this&amp;nbsp;&lt;/STRONG&gt;&lt;/H5&gt;&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Wed, 28 May 2025 09:31:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-grid-editable-cells/m-p/14113534#M2041918</guid>
      <dc:creator>Naveennani8523</dc:creator>
      <dc:date>2025-05-28T09:31:16Z</dc:date>
    </item>
  </channel>
</rss>

