a table control is an area on the screen in which the system displays data in tabular form
TRANSCRIPT
-
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
1/21
A table control is an area on the screen in which the system displays data in tabular form. It is
processed using a loop.
Benefits of using a table control are
Resizable table for displaying and editing data. The user or program can change the column width and position, save the
changes, and reload them later.
Check column for marking lines; marked lines are highlighted in a different color.
Line selection: single lines, multiple lines, all lines, and deselection.
Column headings double as pushbuttons for marking columns.
Scrollbars for horizontal and vertical scrolling.
Any number of key (leading) columns can be set.
Go to SE38 and type Program Name and click CREATE
Select type as MODULE POOL and status as TEST PROGRAM and click SAVE
http://2.bp.blogspot.com/-6HgeeUdlShU/TyaAQplsg0I/AAAAAAAAAPQ/V1BGi7ReWEY/s1600/image001.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
2/21
Select Local Object ( You can also select your own package and save)
Click the icon (Display Object List) in the toolbar
http://4.bp.blogspot.com/-BXjsRX_x1r8/TyaARuRnGbI/AAAAAAAAAPc/F7XFKTm0c8g/s1600/image005.pnghttp://2.bp.blogspot.com/-2lndak9-xfw/TyaARWUhKeI/AAAAAAAAAPU/QT5ouxAbmuU/s1600/image003.pnghttp://4.bp.blogspot.com/-BXjsRX_x1r8/TyaARuRnGbI/AAAAAAAAAPc/F7XFKTm0c8g/s1600/image005.pnghttp://2.bp.blogspot.com/-2lndak9-xfw/TyaARWUhKeI/AAAAAAAAAPU/QT5ouxAbmuU/s1600/image003.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
3/21
Write the below coding (Defining Internal tables for table controls SOURCE and
DESTINATION)
(Cont.)Define table controls SORUCE and DESTINATION to be created in the screen
Right Click the progam name and select Create->Screen
http://1.bp.blogspot.com/-F4BtWEm-BwU/TyaAT4KkmiI/AAAAAAAAAP0/oL26aAXV8wY/s1600/image011.pnghttp://1.bp.blogspot.com/-2vOePGjhvxs/TyaATMkDR6I/AAAAAAAAAPw/nRfsOQv8zKI/s1600/image009.pnghttp://1.bp.blogspot.com/-hB7Q6Digv4I/TyaASTwQyyI/AAAAAAAAAPk/sfYAzcemBG4/s1600/image007.pnghttp://1.bp.blogspot.com/-F4BtWEm-BwU/TyaAT4KkmiI/AAAAAAAAAP0/oL26aAXV8wY/s1600/image011.pnghttp://1.bp.blogspot.com/-2vOePGjhvxs/TyaATMkDR6I/AAAAAAAAAPw/nRfsOQv8zKI/s1600/image009.pnghttp://1.bp.blogspot.com/-hB7Q6Digv4I/TyaASTwQyyI/AAAAAAAAAPk/sfYAzcemBG4/s1600/image007.pnghttp://1.bp.blogspot.com/-F4BtWEm-BwU/TyaAT4KkmiI/AAAAAAAAAP0/oL26aAXV8wY/s1600/image011.pnghttp://1.bp.blogspot.com/-2vOePGjhvxs/TyaATMkDR6I/AAAAAAAAAPw/nRfsOQv8zKI/s1600/image009.pnghttp://1.bp.blogspot.com/-hB7Q6Digv4I/TyaASTwQyyI/AAAAAAAAAPk/sfYAzcemBG4/s1600/image007.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
4/21
Provide screen number (Here 9000) and click CONTINUE
Provide Short Description and click LAYOUT in the toolbar
http://2.bp.blogspot.com/-9HHv-0NR3tY/TyaAVOuqH0I/AAAAAAAAAQI/f3oJwhiYjPg/s1600/image015.pnghttp://3.bp.blogspot.com/-xVoXAY4EL5I/TyaAUVsh7eI/AAAAAAAAAP8/DX-vfRCnoZw/s1600/image013.pnghttp://2.bp.blogspot.com/-9HHv-0NR3tY/TyaAVOuqH0I/AAAAAAAAAQI/f3oJwhiYjPg/s1600/image015.pnghttp://3.bp.blogspot.com/-xVoXAY4EL5I/TyaAUVsh7eI/AAAAAAAAAP8/DX-vfRCnoZw/s1600/image013.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
5/21
Select TABLE CONTROL icon in the toolbar
Tap on the screen to create table controls as shown below
http://3.bp.blogspot.com/-7bqUEOvTxOk/TyaAWmdP6dI/AAAAAAAAAQU/eUl7r36swf8/s1600/image019.pnghttp://4.bp.blogspot.com/-p6zERQOx0nA/TyaAWC4wtZI/AAAAAAAAAQM/-FTY3eHTiI8/s1600/image017.pnghttp://3.bp.blogspot.com/-7bqUEOvTxOk/TyaAWmdP6dI/AAAAAAAAAQU/eUl7r36swf8/s1600/image019.pnghttp://4.bp.blogspot.com/-p6zERQOx0nA/TyaAWC4wtZI/AAAAAAAAAQM/-FTY3eHTiI8/s1600/image017.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
6/21
Click DICTIONARY/PROGRAM FIELDS in the toolbar
Enter the structure defined in the program and click GET FROM PROGRAM and select all
fields
http://3.bp.blogspot.com/-nC4vnyiDvwo/TyaAY3WEbbI/AAAAAAAAAQk/h99dgOSFV-o/s1600/image023.pnghttp://4.bp.blogspot.com/-cxLPSI67l9k/TyaAXnaB36I/AAAAAAAAAQc/3o-n_rVBYOQ/s1600/image021.pnghttp://3.bp.blogspot.com/-nC4vnyiDvwo/TyaAY3WEbbI/AAAAAAAAAQk/h99dgOSFV-o/s1600/image023.pnghttp://4.bp.blogspot.com/-cxLPSI67l9k/TyaAXnaB36I/AAAAAAAAAQc/3o-n_rVBYOQ/s1600/image021.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
7/21
Click on the table control to copy the structure
Provide the following attributes in the attribute panel for each table control
http://3.bp.blogspot.com/-fNoF17sZ66k/TyaAaA1tVAI/AAAAAAAAAQ0/pB2g2TjHo-c/s1600/image027.pnghttp://3.bp.blogspot.com/-F-celgghM6k/TyaAZVFataI/AAAAAAAAAQw/f8YohZ3RLl0/s1600/image025.pnghttp://3.bp.blogspot.com/-fNoF17sZ66k/TyaAaA1tVAI/AAAAAAAAAQ0/pB2g2TjHo-c/s1600/image027.pnghttp://3.bp.blogspot.com/-F-celgghM6k/TyaAZVFataI/AAAAAAAAAQw/f8YohZ3RLl0/s1600/image025.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
8/21
Create push buttons as shown below using PUSH BUTTON icon in the toolbar and provide
attributes for each element as following and Save the screen
Double click on screen 9000 and enter the below code in the flow logic tab
http://3.bp.blogspot.com/-9H79bwLdNzc/TyaAbvFnPpI/AAAAAAAAARI/oRd3Ry9vSkU/s1600/image031.pnghttp://3.bp.blogspot.com/-LiUBtxSBjJU/TyaAa0hTLSI/AAAAAAAAAQ8/pnkI9DnU4Ug/s1600/image029.pnghttp://3.bp.blogspot.com/-9H79bwLdNzc/TyaAbvFnPpI/AAAAAAAAARI/oRd3Ry9vSkU/s1600/image031.pnghttp://3.bp.blogspot.com/-LiUBtxSBjJU/TyaAa0hTLSI/AAAAAAAAAQ8/pnkI9DnU4Ug/s1600/image029.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
9/21
Double click on STATUS_9000 and select YES
Write the below code in the generated module block
http://1.bp.blogspot.com/-OpcHxYNLLHE/TyaAfD1WiVI/AAAAAAAAARc/MbA4EQyl3Ck/s1600/image037.pnghttp://1.bp.blogspot.com/-wKOSDuEOrig/TyaAds9TVpI/AAAAAAAAARY/4DTEWSNXOW4/s1600/image035.pnghttp://2.bp.blogspot.com/-Ye-HOl2j8KE/TyaAc_n7f4I/AAAAAAAAARM/Gu2SYfzTt4w/s1600/image033.pnghttp://1.bp.blogspot.com/-OpcHxYNLLHE/TyaAfD1WiVI/AAAAAAAAARc/MbA4EQyl3Ck/s1600/image037.pnghttp://1.bp.blogspot.com/-wKOSDuEOrig/TyaAds9TVpI/AAAAAAAAARY/4DTEWSNXOW4/s1600/image035.pnghttp://2.bp.blogspot.com/-Ye-HOl2j8KE/TyaAc_n7f4I/AAAAAAAAARM/Gu2SYfzTt4w/s1600/image033.pnghttp://1.bp.blogspot.com/-OpcHxYNLLHE/TyaAfD1WiVI/AAAAAAAAARc/MbA4EQyl3Ck/s1600/image037.pnghttp://1.bp.blogspot.com/-wKOSDuEOrig/TyaAds9TVpI/AAAAAAAAARY/4DTEWSNXOW4/s1600/image035.pnghttp://2.bp.blogspot.com/-Ye-HOl2j8KE/TyaAc_n7f4I/AAAAAAAAARM/Gu2SYfzTt4w/s1600/image033.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
10/21
(Cont.)
(Cont.)
Add a code MODULE modify_source and double click on it and select YES
Write the below code in the generated module block
http://3.bp.blogspot.com/-WFg4LT9ewYI/TyaAhLXCxoI/AAAAAAAAAR0/XQqIzzMHe30/s1600/image043.pnghttp://1.bp.blogspot.com/-U8q-DK2kxJk/TyaAgv0BUvI/AAAAAAAAARs/Fn07a9y1v_A/s1600/image041.pnghttp://3.bp.blogspot.com/-zbqdbmwEU_0/TyaAfguFOLI/AAAAAAAAARo/dAh-TQbpgq0/s1600/image039.pnghttp://3.bp.blogspot.com/-WFg4LT9ewYI/TyaAhLXCxoI/AAAAAAAAAR0/XQqIzzMHe30/s1600/image043.pnghttp://1.bp.blogspot.com/-U8q-DK2kxJk/TyaAgv0BUvI/AAAAAAAAARs/Fn07a9y1v_A/s1600/image041.pnghttp://3.bp.blogspot.com/-zbqdbmwEU_0/TyaAfguFOLI/AAAAAAAAARo/dAh-TQbpgq0/s1600/image039.pnghttp://3.bp.blogspot.com/-WFg4LT9ewYI/TyaAhLXCxoI/AAAAAAAAAR0/XQqIzzMHe30/s1600/image043.pnghttp://1.bp.blogspot.com/-U8q-DK2kxJk/TyaAgv0BUvI/AAAAAAAAARs/Fn07a9y1v_A/s1600/image041.pnghttp://3.bp.blogspot.com/-zbqdbmwEU_0/TyaAfguFOLI/AAAAAAAAARo/dAh-TQbpgq0/s1600/image039.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
11/21
Double click USER_COMMAND_9000 and select YES
Write the below code in the generated module block and activate program
(Cont.)
http://4.bp.blogspot.com/-w9vMLOuhrTM/TyaAj1ueYCI/AAAAAAAAASU/qMF6WY2jX4M/s1600/image051.pnghttp://4.bp.blogspot.com/-3XiXwzqWDDs/TyaAjVRRIzI/AAAAAAAAASM/QyxobxGUqPY/s1600/image049.pnghttp://4.bp.blogspot.com/-aPoQ7B6_Dz8/TyaAia1XFTI/AAAAAAAAASI/XxUeY_Mc10g/s1600/image047.pnghttp://4.bp.blogspot.com/-bP1GZEvgv6w/TyaAhm-yJhI/AAAAAAAAAR8/9fHaJj6UW5U/s1600/image045.pnghttp://4.bp.blogspot.com/-w9vMLOuhrTM/TyaAj1ueYCI/AAAAAAAAASU/qMF6WY2jX4M/s1600/image051.pnghttp://4.bp.blogspot.com/-3XiXwzqWDDs/TyaAjVRRIzI/AAAAAAAAASM/QyxobxGUqPY/s1600/image049.pnghttp://4.bp.blogspot.com/-aPoQ7B6_Dz8/TyaAia1XFTI/AAAAAAAAASI/XxUeY_Mc10g/s1600/image047.pnghttp://4.bp.blogspot.com/-bP1GZEvgv6w/TyaAhm-yJhI/AAAAAAAAAR8/9fHaJj6UW5U/s1600/image045.pnghttp://4.bp.blogspot.com/-w9vMLOuhrTM/TyaAj1ueYCI/AAAAAAAAASU/qMF6WY2jX4M/s1600/image051.pnghttp://4.bp.blogspot.com/-3XiXwzqWDDs/TyaAjVRRIzI/AAAAAAAAASM/QyxobxGUqPY/s1600/image049.pnghttp://4.bp.blogspot.com/-aPoQ7B6_Dz8/TyaAia1XFTI/AAAAAAAAASI/XxUeY_Mc10g/s1600/image047.pnghttp://4.bp.blogspot.com/-bP1GZEvgv6w/TyaAhm-yJhI/AAAAAAAAAR8/9fHaJj6UW5U/s1600/image045.pnghttp://4.bp.blogspot.com/-w9vMLOuhrTM/TyaAj1ueYCI/AAAAAAAAASU/qMF6WY2jX4M/s1600/image051.pnghttp://4.bp.blogspot.com/-3XiXwzqWDDs/TyaAjVRRIzI/AAAAAAAAASM/QyxobxGUqPY/s1600/image049.pnghttp://4.bp.blogspot.com/-aPoQ7B6_Dz8/TyaAia1XFTI/AAAAAAAAASI/XxUeY_Mc10g/s1600/image047.pnghttp://4.bp.blogspot.com/-bP1GZEvgv6w/TyaAhm-yJhI/AAAAAAAAAR8/9fHaJj6UW5U/s1600/image045.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
12/21
(Cont.)
(Cont.)
(Cont.)
(Cont.)
http://4.bp.blogspot.com/-sXQCR7q4tXE/TyaAlyK7K3I/AAAAAAAAASs/PuH6Us-Uzfc/s1600/image057.pnghttp://4.bp.blogspot.com/-Xec5Kjf28dQ/TyaAlT2m6PI/AAAAAAAAASk/TGLKp7RSCdo/s1600/image055.pnghttp://2.bp.blogspot.com/-bgFAVFjBxKs/TyaAkTpH8rI/AAAAAAAAASg/ogAMONPdXjk/s1600/image053.pnghttp://4.bp.blogspot.com/-sXQCR7q4tXE/TyaAlyK7K3I/AAAAAAAAASs/PuH6Us-Uzfc/s1600/image057.pnghttp://4.bp.blogspot.com/-Xec5Kjf28dQ/TyaAlT2m6PI/AAAAAAAAASk/TGLKp7RSCdo/s1600/image055.pnghttp://2.bp.blogspot.com/-bgFAVFjBxKs/TyaAkTpH8rI/AAAAAAAAASg/ogAMONPdXjk/s1600/image053.pnghttp://4.bp.blogspot.com/-sXQCR7q4tXE/TyaAlyK7K3I/AAAAAAAAASs/PuH6Us-Uzfc/s1600/image057.pnghttp://4.bp.blogspot.com/-Xec5Kjf28dQ/TyaAlT2m6PI/AAAAAAAAASk/TGLKp7RSCdo/s1600/image055.pnghttp://2.bp.blogspot.com/-bgFAVFjBxKs/TyaAkTpH8rI/AAAAAAAAASg/ogAMONPdXjk/s1600/image053.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
13/21
Right click on program name and select Create->Transaction
Provide Transaction Name and short description and select CONTINUE
http://2.bp.blogspot.com/-r4oiUbuoe_A/TyaAnI5VZqI/AAAAAAAAATA/wPsm94dLHPA/s1600/image061.pnghttp://4.bp.blogspot.com/-QsDof_VRHtI/TyaAmX5Dm9I/AAAAAAAAAS0/HHHEIjlwG54/s1600/image059.pnghttp://2.bp.blogspot.com/-r4oiUbuoe_A/TyaAnI5VZqI/AAAAAAAAATA/wPsm94dLHPA/s1600/image061.pnghttp://4.bp.blogspot.com/-QsDof_VRHtI/TyaAmX5Dm9I/AAAAAAAAAS0/HHHEIjlwG54/s1600/image059.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
14/21
Provide attributes shown below and save and execute the program
EXECUTE : Activate Program and Right click Program name and select
Execute->In a new window
http://3.bp.blogspot.com/-KMDQyvG2NR8/TyaAoS05dkI/AAAAAAAAATQ/cbfqyklE3HU/s1600/image065.pnghttp://2.bp.blogspot.com/-LJuKv6m-T-A/TyaAnznEuUI/AAAAAAAAATE/AoWnqiVa1sM/s1600/image063.pnghttp://3.bp.blogspot.com/-KMDQyvG2NR8/TyaAoS05dkI/AAAAAAAAATQ/cbfqyklE3HU/s1600/image065.pnghttp://2.bp.blogspot.com/-LJuKv6m-T-A/TyaAnznEuUI/AAAAAAAAATE/AoWnqiVa1sM/s1600/image063.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
15/21
OUTPUT :
Select All
Deselect All
http://3.bp.blogspot.com/-kkKV3a99ygw/TyaAqiHnibI/AAAAAAAAATo/_h4NuX_4V1Y/s1600/image071.pnghttp://2.bp.blogspot.com/-3PYikwqjakk/TyaAp5cqmTI/AAAAAAAAATc/P2wrwp-DJQU/s1600/image069.pnghttp://1.bp.blogspot.com/-B8KA9sY_czo/TyaApavBw2I/AAAAAAAAATU/yinzNCDVs_c/s1600/image067.pnghttp://3.bp.blogspot.com/-kkKV3a99ygw/TyaAqiHnibI/AAAAAAAAATo/_h4NuX_4V1Y/s1600/image071.pnghttp://2.bp.blogspot.com/-3PYikwqjakk/TyaAp5cqmTI/AAAAAAAAATc/P2wrwp-DJQU/s1600/image069.pnghttp://1.bp.blogspot.com/-B8KA9sY_czo/TyaApavBw2I/AAAAAAAAATU/yinzNCDVs_c/s1600/image067.pnghttp://3.bp.blogspot.com/-kkKV3a99ygw/TyaAqiHnibI/AAAAAAAAATo/_h4NuX_4V1Y/s1600/image071.pnghttp://2.bp.blogspot.com/-3PYikwqjakk/TyaAp5cqmTI/AAAAAAAAATc/P2wrwp-DJQU/s1600/image069.pnghttp://1.bp.blogspot.com/-B8KA9sY_czo/TyaApavBw2I/AAAAAAAAATU/yinzNCDVs_c/s1600/image067.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
16/21
Invert Selection
Delete Rows
Restore deleted rows
http://1.bp.blogspot.com/-kx3lq7bUPQs/TyaAsy1XPBI/AAAAAAAAAT8/aE1BSeCns0k/s1600/image077.pnghttp://3.bp.blogspot.com/-y82HrLGEirg/TyaAsMydLwI/AAAAAAAAAT0/h69MJOtZIqw/s1600/image075.pnghttp://4.bp.blogspot.com/-Q5JKMJkiyR8/TyaArZehUgI/AAAAAAAAATs/HoLjXrO3OX8/s1600/image073.pnghttp://1.bp.blogspot.com/-kx3lq7bUPQs/TyaAsy1XPBI/AAAAAAAAAT8/aE1BSeCns0k/s1600/image077.pnghttp://3.bp.blogspot.com/-y82HrLGEirg/TyaAsMydLwI/AAAAAAAAAT0/h69MJOtZIqw/s1600/image075.pnghttp://4.bp.blogspot.com/-Q5JKMJkiyR8/TyaArZehUgI/AAAAAAAAATs/HoLjXrO3OX8/s1600/image073.pnghttp://1.bp.blogspot.com/-kx3lq7bUPQs/TyaAsy1XPBI/AAAAAAAAAT8/aE1BSeCns0k/s1600/image077.pnghttp://3.bp.blogspot.com/-y82HrLGEirg/TyaAsMydLwI/AAAAAAAAAT0/h69MJOtZIqw/s1600/image075.pnghttp://4.bp.blogspot.com/-Q5JKMJkiyR8/TyaArZehUgI/AAAAAAAAATs/HoLjXrO3OX8/s1600/image073.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
17/21
Move selected rows to destination table
Sort rows in ascending order
Sort rows in descending order
http://4.bp.blogspot.com/-TL4VR0-znsg/TyaAvMUwbNI/AAAAAAAAAUY/VNDXq7mNkCU/s1600/image083.pnghttp://3.bp.blogspot.com/-yt2W_ceK79E/TyaAu9XZk5I/AAAAAAAAAUM/OuS9EB0TayE/s1600/image081.pnghttp://3.bp.blogspot.com/-WOrG0BL3pGI/TyaAtYiCYoI/AAAAAAAAAUI/sS4Zy-8oyGI/s1600/image079.pnghttp://4.bp.blogspot.com/-TL4VR0-znsg/TyaAvMUwbNI/AAAAAAAAAUY/VNDXq7mNkCU/s1600/image083.pnghttp://3.bp.blogspot.com/-yt2W_ceK79E/TyaAu9XZk5I/AAAAAAAAAUM/OuS9EB0TayE/s1600/image081.pnghttp://3.bp.blogspot.com/-WOrG0BL3pGI/TyaAtYiCYoI/AAAAAAAAAUI/sS4Zy-8oyGI/s1600/image079.pnghttp://4.bp.blogspot.com/-TL4VR0-znsg/TyaAvMUwbNI/AAAAAAAAAUY/VNDXq7mNkCU/s1600/image083.pnghttp://3.bp.blogspot.com/-yt2W_ceK79E/TyaAu9XZk5I/AAAAAAAAAUM/OuS9EB0TayE/s1600/image081.pnghttp://3.bp.blogspot.com/-WOrG0BL3pGI/TyaAtYiCYoI/AAAAAAAAAUI/sS4Zy-8oyGI/s1600/image079.png -
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
18/21
Complete Coding in text format
Program
*General Structure
TYPES : BEGINOF LS,
MATNR TYPE MARA-MATNR,
ERNAM TYPE MARA-ERNAM,
MTART TYPE MARA-MTART,
MATKL TYPE MARA-MATKL,
MEINS TYPE MARA-MEINS,
MARK,
ENDOF LS.*Work area and internal table for both table control with similiar data
DATA : LS_SOURCE TYPE LS,
LS_DESTINATION TYPE LS,LT_SOURCE LIKETABLEOF LS_SOURCE,
LT_DESTINATION LIKETABLEOF LS_DESTINATION.*Internal table for restoration data
DATA : LT_RESTORE LIKETABLEOF LS_SOURCE.*Table controls
CONTROLS : SOURCE TYPE TABLEVIEW USINGSCREEN9000,
DESTINATION TYPE TABLEVIEW USINGSCREEN9000.*Work area for table control columns
DATA : LS_SRC_COL LIKELINEOF SOURCE-COLS,
LS_DST_COL LIKELINEOF DESTINATION-COLS.DATA : FLAG, "To fill source table once
FIELD(20). "To store column name in table control
Screen Flow Logic
PROCESS BEFORE OUTPUT.MODULE STATUS_9000.LOOPAT LT_SOURCE INTO
LS_SOURCE WITHCONTROL SOURCE.ENDLOOP.LOOPAT LT_DESTINATION INTO
LS_DESTINATION WITHCONTROL DESTINATION.ENDLOOP.
PROCESS AFTER INPUT.LOOPAT LT_SOURCE.MODULE MODIFY_SOURCE.ENDLOOP.LOOP
AT LT_DESTINATION.ENDLOOP.MODULE USER_COMMAND_9000.
PBO (Module STATUS_9000 output)
module STATUS_9000 output.* SET PF-STATUS 'xxxxxxxx'.
* SET TITLEBAR 'xxx'.
*To fill table control(SOURCE) once
IF FLAG = ''.*Data selection for source table
SELECT * UPTO5ROWS
FROM MARA
INTO CORRESPONDING FIELDSOFTABLE LT_SOURCE.
FLAG = 'X'.ENDIF.*If internal table is not empty
IFNOTLINES( LT_SOURCE ) = 0.*Set no. of table control lines(SOURCE)
SOURCE-LINES = LINES( LT_SOURCE ).ELSE.*Disable table control linesSOURCE-LINES = -1.ENDIF.*If internal table is not empty
-
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
19/21
IFNOTLINES( LT_DESTINATION ) = 0.*Set no. of table control lines(DESTINATION)
DESTINATION-LINES = LINES( LT_DESTINATION ).ELSE.*Disable table control lines
DESTINATION-LINES = -1.ENDIF."To set all columns in read only mode
LOOPAT DESTINATION-COLS INTO LS_DST_COL.
LS_DST_COL-SCREEN-INPUT = ''.MODIFY DESTINATION-COLS FROM
LS_DST_COL.ENDLOOP."To set all columns in read only modeLOOPAT SOURCE-COLS INTO LS_SRC_COL.
LS_SRC_COL-SCREEN-INPUT = ''.MODIFY SOURCE-COLS FROM
LS_SRC_COL.ENDLOOP.endmodule. " STATUS_9000 OUTPUT
PAI ( Module MODIFY_SOURCE input)
module MODIFY_SOURCE input."Updating changes from table control to internal table
MODIFY LT_SOURCE FROM LS_SOURCE INDEX SOURCE-CURRENT_LINE.endmodule. "
MODIFY_SOURCE INPUT
PAI ( Module USER_COMMAND_9000 input)
module USER_COMMAND_9000 input."User command field
DATA OK_CODE TYPE SY-UCOMM.
OK_CODE = SY-UCOMM.CASE OK_CODE.
WHEN'DELETE'.
"Retrieving record selected
LOOPAT LT_SOURCE INTO LS_SOURCE WHERE MARK = 'X'.
"Appending record to be deleted in restore table
APPEND LS_SOURCE TO LT_RESTORE.
"Deleting record to be deleted
DELETETABLE LT_SOURCE FROM LS_SOURCE."Decrementing table control line by one
SOURCE-LINES = SOURCE-LINES - 1.
ENDLOOP.
WHEN'RESTORE'.
"Moving records from restore table to source table
APPENDLINESOF LT_RESTORE TO LT_SOURCE.
"Sorting source table in ascending order
SORT LT_SOURCE BY MATNR."Clearing contents in restore table
REFRESH LT_RESTORE.
WHEN'MOVE'.
"Retrieving record selected
LOOPAT LT_SOURCE INTO LS_SOURCE WHERE MARK = 'X'.
"Making records being not selected
CLEAR LS_SOURCE-MARK.
"Moving record to destination table
APPEND LS_SOURCE TO LT_DESTINATION.
ENDLOOP."Sorting destination table in ascending order
-
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
20/21
SORT LT_DESTINATION.
"Deleting duplicate records
DELETEADJACENTDUPLICATESFROM LT_DESTINATION COMPARINGALLFIELDS.
WHEN'SELECT'.
"Retrieving record being not selectedLOOPAT LT_SOURCE INTO LS_SOURCE WHERE MARK 'X'.
"Making record being selected
LS_SOURCE-MARK = 'X'.
"Updating Changes to source table
MODIFY LT_SOURCE FROM LS_SOURCE TRANSPORTING MARK.
ENDLOOP.
WHEN'DESELECT'.
"Retrieving record being selected
LOOPAT LT_SOURCE INTO LS_SOURCE WHERE MARK = 'X'.
"Making record being not selectedLS_SOURCE-MARK = ''.
"Updating Changes to source table
MODIFY LT_SOURCE FROM LS_SOURCE TRANSPORTING MARK.
ENDLOOP.
WHEN'INVERT'.
"Retrieving record being selected
LOOPAT LT_SOURCE INTO LS_SOURCE WHERE MARK = 'X'.
"Setting mark value to temporary value other than 'X' or space( here 'Y')
LS_SOURCE-MARK = 'Y'.
MODIFY LT_SOURCE FROM LS_SOURCE TRANSPORTING MARK.ENDLOOP.
"Retreiving record being not selected
LOOPAT LT_SOURCE INTO LS_SOURCE WHERE MARK = ''.
"Making record being selected
LS_SOURCE-MARK = 'X'.
MODIFY LT_SOURCE FROM LS_SOURCE TRANSPORTING MARK.
ENDLOOP.
"Retrieving record whose mark value has been set to temporary value( here 'Y')
LOOPAT LT_SOURCE INTO LS_SOURCE WHERE MARK = 'Y'.
"Making record being not selected
LS_SOURCE-MARK = ''.MODIFY LT_SOURCE FROM LS_SOURCE TRANSPORTING MARK.
ENDLOOP.
WHEN'SORT_A'.
"Retrieving column being selected
READTABLE SOURCE-COLS INTO LS_SRC_COL WITHKEY SELECTED = 'X'.
"Assigning column name to variable
FIELD = LS_SRC_COL-SCREEN-NAME+10(10).
IF SY-SUBRC = 0.
"Sorting source table in ascending order if any column selected
SORT LT_SOURCE BY (FIELD).ENDIF.
-
7/31/2019 A Table Control is an Area on the Screen in Which the System Displays Data in Tabular Form
21/21
WHEN'SORT_D'.
"Retrieving column being selected
READTABLE SOURCE-COLS INTO LS_SRC_COL WITHKEY SELECTED = 'X'.
"Assigning column name to variable
FIELD = LS_SRC_COL-SCREEN-NAME+10(10).IF SY-SUBRC = 0.
"Sorting source table in descending order if any column selected
SORT LT_SOURCE BY (FIELD) DESCENDING.
ENDIF.
WHEN'EXIT'.
"Leaving program
LEAVEPROGRAM.
ENDCASE.endmodule. " USER_COMMAND_9000 INPUT