<?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 Editable ALV in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093146#M733794</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Friends,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have developed an Editable ALV list report and everything works fine.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It has a quantity column and is the editable column. Once the user enters quantity into this column and hits enter it does some validations. &amp;lt;b&amp;gt;After the validations the curson remains on the same line. The user wants the curson on the next line.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;How can this be done.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in Advance,&lt;/P&gt;&lt;P&gt;Ster.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 27 Nov 2007 21:41:25 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-11-27T21:41:25Z</dc:date>
    <item>
      <title>Editable ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093146#M733794</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Friends,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have developed an Editable ALV list report and everything works fine.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It has a quantity column and is the editable column. Once the user enters quantity into this column and hits enter it does some validations. &amp;lt;b&amp;gt;After the validations the curson remains on the same line. The user wants the curson on the next line.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;How can this be done.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in Advance,&lt;/P&gt;&lt;P&gt;Ster.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 21:41:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093146#M733794</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-27T21:41:25Z</dc:date>
    </item>
    <item>
      <title>Re: Editable ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093147#M733795</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;IS this possible.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ster...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 21:50:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093147#M733795</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-27T21:50:03Z</dc:date>
    </item>
    <item>
      <title>Re: Editable ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093148#M733796</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think it is not possible.&lt;/P&gt;&lt;P&gt;Actually, I haven't came across this type of scenario.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naimesh Patel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 23:02:19 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093148#M733796</guid>
      <dc:creator>naimesh_patel</dc:creator>
      <dc:date>2007-11-27T23:02:19Z</dc:date>
    </item>
    <item>
      <title>Re: Editable ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093149#M733797</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thnaks Naimesh,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ster.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Nov 2007 23:08:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093149#M733797</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-11-27T23:08:49Z</dc:date>
    </item>
    <item>
      <title>Re: Editable ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093150#M733798</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Ster&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Of course it is possible. However, you need to code this kind of event handling yourself.&lt;/P&gt;&lt;P&gt;Have a look at sample report &amp;lt;b&amp;gt;ZUS_SDN_ALVGRID_EDITABLE_8&amp;lt;/b&amp;gt;. When you enter a value in the single editable column and push ENTER afterwards the cursor moves to the next row.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Report  ZUS_SDN_ALVGRID_EDITABLE_8
*&amp;amp;
*&amp;amp; Description: editable ALV -&amp;gt; ENTER jumps to next row
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Dynpro flow logic: no screen elements, ok_code = GD_OKCODE
**    PROCESS BEFORE OUTPUT.
**      MODULE STATUS_0100.
***
**    PROCESS AFTER INPUT.
**      MODULE USER_COMMAND_0100.
**
*&amp;amp;
*&amp;amp;---------------------------------------------------------------------*

REPORT  zus_sdn_alvgrid_editable_8.

DATA:
  gd_repid         TYPE syst-repid,
  gd_okcode        TYPE ui_func,
*
  gt_fcat          TYPE lvc_t_fcat,
  go_docking       TYPE REF TO cl_gui_docking_container,
  go_grid          TYPE REF TO cl_gui_alv_grid.


DATA:
  gt_knb1          TYPE STANDARD TABLE OF knb1.


*---------------------------------------------------------------------*
*       CLASS lcl_eventhandler DEFINITION
*---------------------------------------------------------------------*
*
*---------------------------------------------------------------------*
CLASS lcl_eventhandler DEFINITION.

  PUBLIC SECTION.

    CLASS-METHODS:
      handle_data_changed
        FOR EVENT data_changed OF cl_gui_alv_grid
        IMPORTING
          er_data_changed
          e_onf4
          e_onf4_before
          e_onf4_after
          e_ucomm
          sender.


ENDCLASS.                    "lcl_eventhandler DEFINITION


*---------------------------------------------------------------------*
*       CLASS lcl_eventhandler IMPLEMENTATION
*---------------------------------------------------------------------*
*
*---------------------------------------------------------------------*
CLASS lcl_eventhandler IMPLEMENTATION.

  METHOD handle_data_changed.
*   define local data

**    cl_gui_cfw=&amp;gt;set_new_ok_code( 'NEXT_ROW' ). " not possible on 4.6c
    CALL METHOD cl_gui_cfw=&amp;gt;set_new_ok_code
      EXPORTING
        new_code = 'NEXT_ROW'
*      IMPORTING
*        RC       =
        .
"   Triggers PAI of dynpro with ok_code = 'NEXT_ROW'

  ENDMETHOD.                    "handle_data_changed


ENDCLASS.                    "lcl_eventhandler IMPLEMENTATION







PARAMETERS:
  p_bukrs      TYPE bukrs  DEFAULT '2000'  OBLIGATORY.






START-OF-SELECTION.

  SELECT        * FROM  knb1 INTO TABLE gt_knb1
         WHERE  bukrs  = p_bukrs.



* Create docking container
  CREATE OBJECT go_docking
    EXPORTING
      parent                      = cl_gui_container=&amp;gt;screen0
      ratio                       = 90
    EXCEPTIONS
      OTHERS                      = 6.
  IF sy-subrc &amp;lt;&amp;gt; 0.
*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.


* Create ALV grid
  CREATE OBJECT go_grid
    EXPORTING
      i_parent          = go_docking
    EXCEPTIONS
      OTHERS            = 5.
  IF sy-subrc &amp;lt;&amp;gt; 0.
*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

" Triggers event DATA_CHANGED when ENTER is pushed
  CALL METHOD go_grid-&amp;gt;register_edit_event
    EXPORTING
      i_event_id = cl_gui_alv_grid=&amp;gt;mc_evt_enter
    EXCEPTIONS
      error      = 1
      OTHERS     = 2.
  IF sy-subrc &amp;lt;&amp;gt; 0.
*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

  SET HANDLER:
    lcl_eventhandler=&amp;gt;handle_data_changed          FOR go_grid.


* Build fieldcatalog and set hotspot for field KUNNR
  PERFORM build_fieldcatalog_knb1.



* Display data
  CALL METHOD go_grid-&amp;gt;set_table_for_first_display
    CHANGING
      it_outtab       = gt_knb1
      it_fieldcatalog = gt_fcat
    EXCEPTIONS
      OTHERS          = 4.
  IF sy-subrc &amp;lt;&amp;gt; 0.
*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.






* Link the docking container to the target dynpro
  gd_repid = syst-repid.
  CALL METHOD go_docking-&amp;gt;link
    EXPORTING
      repid                       = gd_repid
      dynnr                       = '0100'
*      CONTAINER                   =
    EXCEPTIONS
      OTHERS                      = 4.
  IF sy-subrc &amp;lt;&amp;gt; 0.
*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.


* ok-code field = GD_OKCODE
  CALL SCREEN '0100'.


END-OF-SELECTION.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  STATUS_0100  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  SET PF-STATUS 'STATUS_0100'.
*  SET TITLEBAR 'xxx'.

**      CALL METHOD go_grid1-&amp;gt;refresh_table_display
***        EXPORTING
***          IS_STABLE      =
***          I_SOFT_REFRESH =
**        EXCEPTIONS
**          FINISHED       = 1
**          others         = 2
**              .
**      IF sy-subrc &amp;lt;&amp;gt; 0.
***       MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
***                  WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
**      ENDIF.

ENDMODULE.                 " STATUS_0100  OUTPUT

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  USER_COMMAND_0100  INPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.

  go_grid-&amp;gt;check_changed_data( ).

  CASE gd_okcode.
    WHEN 'BACK' OR
         'END'  OR
         'CANC'.
      SET SCREEN 0. LEAVE SCREEN.

"   NOTE: ENTER button alone works apparently only if the cursor
"         is placed within the command window (left-upper corner)
    WHEN 'ENTER'  OR
         'NEXT_ROW'.
      PERFORM set_cursor_next_row.

    WHEN OTHERS.
  ENDCASE.

  CLEAR: gd_okcode.

ENDMODULE.                 " USER_COMMAND_0100  INPUT


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  BUILD_FIELDCATALOG_KNB1
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM build_fieldcatalog_knb1 .
* define local data
  DATA:
    ls_fcat        TYPE lvc_s_fcat.

  CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
    EXPORTING
*     I_BUFFER_ACTIVE              =
      i_structure_name             = 'KNB1'
*     I_CLIENT_NEVER_DISPLAY       = 'X'
*     I_BYPASSING_BUFFER           =
*     I_INTERNAL_TABNAME           =
    CHANGING
      ct_fieldcat                  = gt_fcat
    EXCEPTIONS
      inconsistent_interface       = 1
      program_error                = 2
      OTHERS                       = 3.
  IF sy-subrc &amp;lt;&amp;gt; 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.


  LOOP AT gt_fcat INTO ls_fcat
          WHERE ( fieldname = 'ZUAWA' ).
    ls_fcat-edit    = abap_true.
    ls_fcat-col_opt = abap_true.
    MODIFY gt_fcat FROM ls_fcat.
  ENDLOOP.


ENDFORM.                    " BUILD_FIELDCATALOG_KNB1

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  SET_CURSOR_NEXT_ROW
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM set_cursor_next_row .
* define local data
  DATA:
    ls_row    TYPE lvc_s_row,
    ls_col    TYPE lvc_s_col.



  CALL METHOD go_grid-&amp;gt;get_current_cell
    IMPORTING
*      E_ROW     =
*      E_VALUE   =
*      E_COL     =
      es_row_id = ls_row
      es_col_id = ls_col
*      ES_ROW_NO =
      .

  ADD 1 TO ls_row-index.  " next row

  CALL METHOD go_grid-&amp;gt;set_current_cell_via_id
    EXPORTING
      is_row_id    = ls_row
      is_column_id = ls_col
*      IS_ROW_NO    =
      .

ENDFORM.                    " SET_CURSOR_NEXT_ROW&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;  Uwe&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Nov 2007 19:40:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093150#M733798</guid>
      <dc:creator>uwe_schieferstein</dc:creator>
      <dc:date>2007-11-28T19:40:26Z</dc:date>
    </item>
    <item>
      <title>Re: Editable ALV</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093151#M733799</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Uwe Schieferstein,&lt;/P&gt;&lt;P&gt;                               I am making editable ALV with Qty column. I dont hav any knowledge of oops. Can u plz send me sample code for this without oops tech.. is it possible in simpe abap alv program. plz help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 21 Jan 2008 06:43:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/editable-alv/m-p/3093151#M733799</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-21T06:43:32Z</dc:date>
    </item>
  </channel>
</rss>

