<?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 Updating database table using Table Control in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/updating-database-table-using-table-control/m-p/1752259#M326237</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi ABAPers,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i have a problem while updating the database table using table control,&lt;/P&gt;&lt;P&gt;please,check the code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code in Top Include:&lt;/P&gt;&lt;P&gt;Tables: MARA,&lt;/P&gt;&lt;P&gt;        MAKT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF ITAB OCCURS 0,&lt;/P&gt;&lt;P&gt;      MATNR LIKE MARA-MATNR,&lt;/P&gt;&lt;P&gt;      SPRAS LIKE MAKT-SPRAS,&lt;/P&gt;&lt;P&gt;      MAKTX LIKE MAKT-MAKTX,&lt;/P&gt;&lt;P&gt;      END OF ITAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*data:ok_code(20).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONTROLS TC1 TYPE TABLEVIEW USING SCREEN 2000.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*DATA: cols LIKE LINE OF TC1-cols,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     lines TYPE i.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen_1000:Code in PAI&lt;/P&gt;&lt;P&gt;module USER_COMMAND_1000 input.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE SY-UCOMM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'DISPLAY'.&lt;/P&gt;&lt;P&gt;SELECT SPRAS MAKTX FROM MAKT INTO CORRESPONDING FIELDS OF TABLE ITAB WHERE MATNR = MARA-MATNR.&lt;/P&gt;&lt;P&gt;IF SY-DBCNT IS INITIAL.&lt;/P&gt;&lt;P&gt;MESSAGE I127(ZKC_MSGCLS).&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;SET SCREEN 2000.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'EXIT'.&lt;/P&gt;&lt;P&gt;LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;SET SCREEN 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;endmodule.                 " USER_COMMAND_1000  INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen_2000 PAI Code&lt;/P&gt;&lt;P&gt;module USER_COMMAND_2000 input.&lt;/P&gt;&lt;P&gt;CASE SY-UCOMM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'UPDATE'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   LOOP AT TC1-cols INTO cols WHERE index GT 2.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       IF  cols-screen-input = '0'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         cols-screen-input = '1'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       ELSEIF  cols-screen-input = '1'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         cols-screen-input = '0'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       MODIFY TC1-cols FROM cols INDEX sy-tabix.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ENDLOOP.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'EXIT'.&lt;/P&gt;&lt;P&gt;LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;SET SCREEN 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;SET SCREEN 1000.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;endmodule.                 " USER_COMMAND_2000  INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen_2000 Code outside PBO&lt;/P&gt;&lt;P&gt;LOOP AT itab WITH CONTROL TC1 CURSOR TC1-TOP_LINE.&lt;/P&gt;&lt;P&gt;  MODULE ctrl_pai.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen_2000 Code outside PAI&lt;/P&gt;&lt;P&gt;LOOP AT itab.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;vinod&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 15 Dec 2006 06:36:00 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-12-15T06:36:00Z</dc:date>
    <item>
      <title>Updating database table using Table Control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/updating-database-table-using-table-control/m-p/1752259#M326237</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi ABAPers,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i have a problem while updating the database table using table control,&lt;/P&gt;&lt;P&gt;please,check the code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code in Top Include:&lt;/P&gt;&lt;P&gt;Tables: MARA,&lt;/P&gt;&lt;P&gt;        MAKT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF ITAB OCCURS 0,&lt;/P&gt;&lt;P&gt;      MATNR LIKE MARA-MATNR,&lt;/P&gt;&lt;P&gt;      SPRAS LIKE MAKT-SPRAS,&lt;/P&gt;&lt;P&gt;      MAKTX LIKE MAKT-MAKTX,&lt;/P&gt;&lt;P&gt;      END OF ITAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*data:ok_code(20).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONTROLS TC1 TYPE TABLEVIEW USING SCREEN 2000.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*DATA: cols LIKE LINE OF TC1-cols,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     lines TYPE i.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen_1000:Code in PAI&lt;/P&gt;&lt;P&gt;module USER_COMMAND_1000 input.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE SY-UCOMM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'DISPLAY'.&lt;/P&gt;&lt;P&gt;SELECT SPRAS MAKTX FROM MAKT INTO CORRESPONDING FIELDS OF TABLE ITAB WHERE MATNR = MARA-MATNR.&lt;/P&gt;&lt;P&gt;IF SY-DBCNT IS INITIAL.&lt;/P&gt;&lt;P&gt;MESSAGE I127(ZKC_MSGCLS).&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;SET SCREEN 2000.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'EXIT'.&lt;/P&gt;&lt;P&gt;LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;SET SCREEN 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;endmodule.                 " USER_COMMAND_1000  INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen_2000 PAI Code&lt;/P&gt;&lt;P&gt;module USER_COMMAND_2000 input.&lt;/P&gt;&lt;P&gt;CASE SY-UCOMM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'UPDATE'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   LOOP AT TC1-cols INTO cols WHERE index GT 2.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       IF  cols-screen-input = '0'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         cols-screen-input = '1'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       ELSEIF  cols-screen-input = '1'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         cols-screen-input = '0'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       MODIFY TC1-cols FROM cols INDEX sy-tabix.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ENDLOOP.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'EXIT'.&lt;/P&gt;&lt;P&gt;LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;SET SCREEN 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;SET SCREEN 1000.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;endmodule.                 " USER_COMMAND_2000  INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen_2000 Code outside PBO&lt;/P&gt;&lt;P&gt;LOOP AT itab WITH CONTROL TC1 CURSOR TC1-TOP_LINE.&lt;/P&gt;&lt;P&gt;  MODULE ctrl_pai.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Screen_2000 Code outside PAI&lt;/P&gt;&lt;P&gt;LOOP AT itab.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;vinod&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Dec 2006 06:36:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/updating-database-table-using-table-control/m-p/1752259#M326237</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-15T06:36:00Z</dc:date>
    </item>
    <item>
      <title>Re: Updating database table using Table Control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/updating-database-table-using-table-control/m-p/1752260#M326238</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;i am sending you one code,just refer that and change your modify statement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT demo_dynpro_tabcont_loop_at.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;CONTROLS flights TYPE TABLEVIEW USING SCREEN 100.
DATA: cols LIKE LINE OF flights-cols,
      lines TYPE i.

DATA: ok_code TYPE sy-ucomm,
      save_ok TYPE sy-ucomm.

DATA: itab TYPE TABLE OF demo_conn.
TABLES demo_conn.

SELECT * FROM spfli INTO CORRESPONDING FIELDS OF TABLE itab.

LOOP AT flights-cols INTO cols WHERE index GT 2.
  cols-screen-input = '0'.
  MODIFY flights-cols FROM cols INDEX sy-tabix.
ENDLOOP.

CALL SCREEN 100.

MODULE status_0100 OUTPUT.
  SET PF-STATUS 'SCREEN_100'.
  DESCRIBE TABLE itab LINES lines.
  flights-lines = lines.
ENDMODULE.

MODULE cancel INPUT.
  LEAVE PROGRAM.
ENDMODULE.

MODULE read_table_control INPUT.
  MODIFY itab FROM demo_conn INDEX flights-current_line.
ENDMODULE.

MODULE user_command_0100 INPUT.
  save_ok = ok_code.
  CLEAR ok_code.
  CASE save_ok.
    WHEN 'TOGGLE'.
      LOOP AT flights-cols INTO cols WHERE index GT 2.
        IF  cols-screen-input = '0'.
          cols-screen-input = '1'.
        ELSEIF  cols-screen-input = '1'.
          cols-screen-input = '0'.
        ENDIF.
        MODIFY flights-cols FROM cols INDEX sy-tabix.
      ENDLOOP.
    WHEN 'SORT_UP'.
      READ TABLE flights-cols INTO cols WITH KEY selected = 'X'.
      IF sy-subrc = 0.
        SORT itab STABLE BY (cols-screen-name+10) ASCENDING.
        cols-selected = ' '.
        MODIFY flights-cols FROM cols INDEX sy-tabix.
      ENDIF.
    WHEN 'SORT_DOWN'.
      READ TABLE flights-cols INTO cols WITH KEY selected = 'X'.
      IF sy-subrc = 0.
        SORT itab STABLE BY (cols-screen-name+10) DESCENDING.
        cols-selected = ' '.
        MODIFY flights-cols FROM cols INDEX sy-tabix.
      ENDIF.
    WHEN 'DELETE'.
      READ TABLE flights-cols INTO cols WITH KEY screen-input = '1'.
      IF sy-subrc = 0.
        LOOP AT itab INTO demo_conn WHERE mark = 'X'.
          DELETE itab.
        ENDLOOP.
      ENDIF.
  ENDCASE.
ENDMODULE.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;&lt;/P&gt;&lt;P&gt;flow logic:&amp;lt;/b&amp;gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;PROCESS BEFORE OUTPUT.
  MODULE STATUS_0100.
    LOOP AT ITAB INTO DEMO_CONN WITH CONTROL FLIGHTS.
  ENDLOOP.

PROCESS AFTER INPUT.
  MODULE CANCEL AT EXIT-COMMAND.
  LOOP AT ITAB.
    module read_table_control.
  ENDLOOP.
  module user_command_0100.&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;pankaj singh&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;reward if helpful&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Dec 2006 06:47:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/updating-database-table-using-table-control/m-p/1752260#M326238</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-15T06:47:10Z</dc:date>
    </item>
  </channel>
</rss>

