<?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: complex screen programming in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/complex-screen-programming/m-p/2225471#M478187</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;REPORT ZBHMOD1 .&lt;/P&gt;&lt;P&gt;DATA:OKCODE1 LIKE SY-UCOMM,&lt;/P&gt;&lt;P&gt;OKCODE2 LIKE SY-UCOMM.&lt;/P&gt;&lt;P&gt;DATA:N1(10) TYPE N,N2(10) TYPE N,RES(12) TYPE N.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1000 INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE OKCODE1.&lt;/P&gt;&lt;P&gt;WHEN 'NEXT'.&lt;/P&gt;&lt;P&gt;RES = N1 + N2.&lt;/P&gt;&lt;P&gt;SET SCREEN 1001.&lt;/P&gt;&lt;P&gt;WHEN 'CLEA'.&lt;/P&gt;&lt;P&gt;CLEAR:N1,N2.&lt;/P&gt;&lt;P&gt;WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;SET SCREEN '0'.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " USER_COMMAND_1000 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE STATUS_1000 OUTPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SET PF-STATUS 'xxxxxxxx'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SET TITLEBAR 'TIT1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " STATUS_1000 OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1001 INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE OKCODE2.&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;&lt;/P&gt;&lt;P&gt;ENDMODULE. " USER_COMMAND_1001 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE STATUS_1001 OUTPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SET PF-STATUS 'xxxxxxxx'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SET TITLEBAR 'TIT2'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " STATUS_1001 OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLOW LOGIC:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE STATUS_1000.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1000.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE STATUS_1001.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**************************************************************************&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;2)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZBHMOD2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: OKCODE1 TYPE SY-UCOMM,&lt;/P&gt;&lt;P&gt;OKCODE2 TYPE SY-UCOMM,&lt;/P&gt;&lt;P&gt;ENAME(10) TYPE C,&lt;/P&gt;&lt;P&gt;DNAME(10) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE STATUS_1000 OUTPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SET PF-STATUS 'xxxxxxxx'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SET TITLEBAR 'TIT1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " STATUS_1000 OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE STATUS_1001 OUTPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SET PF-STATUS 'xxxxxxxx'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SET TITLEBAR 'TIT2'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " STATUS_1001 OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1000 INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE OKCODE1.&lt;/P&gt;&lt;P&gt;WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;SET SCREEN '0'.&lt;/P&gt;&lt;P&gt;WHEN 'NEXT'.&lt;/P&gt;&lt;P&gt;DNAME = ENAME.&lt;/P&gt;&lt;P&gt;SET SCREEN '1001'.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " USER_COMMAND_1000 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1001 INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE OKCODE2.&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;&lt;/P&gt;&lt;P&gt;ENDMODULE. " USER_COMMAND_1001 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM ON_CTMENU_FORM USING ZDEMO1 TYPE REF TO CL_CTMENU.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL METHOD ZDEMO1-&amp;gt;LOAD_GUI_STATUS&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;PROGRAM = 'ZDEMO1'&lt;/P&gt;&lt;P&gt;STATUS = 'ZDEMO1'&lt;/P&gt;&lt;P&gt;MENU = ZDEMO1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " ON_CTMENU_FORM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLOW LOGIC:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE STATUS_1000.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1000.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE STATUS_1001.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Every Screen has a pbo and a pai.&lt;/P&gt;&lt;P&gt;Screen elements are the textbox, buttons, radio buttons and check boxes .....&lt;/P&gt;&lt;P&gt;If we want to pass data from a abap program to a screen element, we have to create a variable with the name we have given in the screen.So whatever the value is present in that variable is reflected on to the screen element.&lt;/P&gt;&lt;P&gt;Here is an example :&lt;/P&gt;&lt;P&gt;Using subscreens and some of the screen elements &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT demo_dynpro_subscreens.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: ok_code TYPE sy-ucomm,&lt;/P&gt;&lt;P&gt;save_ok TYPE sy-ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: number1(4) TYPE n VALUE '0110',&lt;/P&gt;&lt;P&gt;number2(4) TYPE n VALUE '0130',&lt;/P&gt;&lt;P&gt;field(10) TYPE c, field1(10) TYPE c, field2(10) TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL SCREEN 100.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE status_100 OUTPUT.&lt;/P&gt;&lt;P&gt;SET PF-STATUS 'SCREEN_100'.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE fill_0110 OUTPUT.&lt;/P&gt;&lt;P&gt;field = 'Eingabe 1'(001).&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE fill_0120 OUTPUT.&lt;/P&gt;&lt;P&gt;field = field1.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE fill_0130 OUTPUT.&lt;/P&gt;&lt;P&gt;field = 'Eingabe 2'(002).&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE fill_0140 OUTPUT.&lt;/P&gt;&lt;P&gt;field = field2.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE cancel INPUT.&lt;/P&gt;&lt;P&gt;LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE save_ok INPUT.&lt;/P&gt;&lt;P&gt;save_ok = ok_code.&lt;/P&gt;&lt;P&gt;CLEAR ok_code.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_0110 INPUT.&lt;/P&gt;&lt;P&gt;IF save_ok = 'OK1'.&lt;/P&gt;&lt;P&gt;number1 = '0120'.&lt;/P&gt;&lt;P&gt;field1 = field.&lt;/P&gt;&lt;P&gt;CLEAR field.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_0130 INPUT.&lt;/P&gt;&lt;P&gt;IF save_ok = 'OK2'.&lt;/P&gt;&lt;P&gt;number2 = '0140'.&lt;/P&gt;&lt;P&gt;field2 = field.&lt;/P&gt;&lt;P&gt;CLEAR field.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_100 INPUT.&lt;/P&gt;&lt;P&gt;CASE save_ok.&lt;/P&gt;&lt;P&gt;WHEN 'SUB1'.&lt;/P&gt;&lt;P&gt;number1 = '0110'.&lt;/P&gt;&lt;P&gt;WHEN 'SUB2'.&lt;/P&gt;&lt;P&gt;number1 = '0120'.&lt;/P&gt;&lt;P&gt;CLEAR field1.&lt;/P&gt;&lt;P&gt;WHEN 'SUB3'.&lt;/P&gt;&lt;P&gt;number2 = '0130'.&lt;/P&gt;&lt;P&gt;WHEN 'SUB4'.&lt;/P&gt;&lt;P&gt;number2 = '0140'.&lt;/P&gt;&lt;P&gt;CLEAR field2.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;flow logic for screen 100 &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE STATUS_100.&lt;/P&gt;&lt;P&gt;CALL SUBSCREEN: AREA1 INCLUDING SY-REPID NUMBER1,&lt;/P&gt;&lt;P&gt;AREA2 INCLUDING SY-REPID NUMBER2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE CANCEL AT EXIT-COMMAND.&lt;/P&gt;&lt;P&gt;MODULE SAVE_OK.&lt;/P&gt;&lt;P&gt;CALL SUBSCREEN: AREA1,&lt;/P&gt;&lt;P&gt;AREA2.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_100.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;flow logic for screen 110 &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE FILL_0110.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_0110.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;flow logic for screen 120 &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE FILL_0120.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;flow logic for screen 130 &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE FILL_0130.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_0130. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;flow logic for screen 140 &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE FILL_0140.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;Check the below link:&lt;/P&gt;&lt;P&gt;&lt;A href="http://wiki.ittoolbox.com/index.php/FAQ:What_is_module_pool_program_in_abap%3F" target="test_blank"&gt;http://wiki.ittoolbox.com/index.php/FAQ:What_is_module_pool_program_in_abap%3F&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_46c/helpdata/en/35/26b1aaafab52b9e10000009b38f974/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_46c/helpdata/en/35/26b1aaafab52b9e10000009b38f974/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://sap.mis.cmich.edu/sap-abap/abap09/sld011.htm" target="test_blank"&gt;http://sap.mis.cmich.edu/sap-abap/abap09/sld011.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://sap.mis.cmich.edu/sap-abap/abap09/index.htm" target="test_blank"&gt;http://sap.mis.cmich.edu/sap-abap/abap09/index.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can also check the transaction ABAPDOCU which gives you lot of sample programs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also you can see the below examples...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go to se38 and give demo&lt;STRONG&gt;dynpro&lt;/STRONG&gt; and press F4.&lt;/P&gt;&lt;P&gt;YOu will get a list of demo module pool programs.&lt;/P&gt;&lt;P&gt;One more T-Code is ABAPDOCU.&lt;/P&gt;&lt;P&gt;YOu can find more examples there.&lt;/P&gt;&lt;P&gt;See the prgrams:&lt;/P&gt;&lt;P&gt;DEMO_DYNPRO_TABLE_CONTROL_1 Table Control with LOOP Statement &lt;/P&gt;&lt;P&gt;DEMO_DYNPRO_TABLE_CONTROL_2 Table Control with LOOP AT ITAB &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.geocities.com/ZSAPcHAT" target="test_blank"&gt;http://www.geocities.com/ZSAPcHAT&lt;/A&gt; &lt;/P&gt;&lt;P&gt;&lt;A href="http://www.allsaplinks.com/files/using_table_in_screen.pdf" target="test_blank"&gt;http://www.allsaplinks.com/files/using_table_in_screen.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward points if useful&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;Anji&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 06 May 2007 06:20:10 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-05-06T06:20:10Z</dc:date>
    <item>
      <title>complex screen programming</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/complex-screen-programming/m-p/2225470#M478186</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi to all sdn people &lt;/P&gt;&lt;P&gt;can u anybody pls give coding of one sample screen program with 3 or 4 screens with each screen layout filelds and flow logic for each &lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 06 May 2007 06:14:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/complex-screen-programming/m-p/2225470#M478186</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-05-06T06:14:35Z</dc:date>
    </item>
    <item>
      <title>Re: complex screen programming</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/complex-screen-programming/m-p/2225471#M478187</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;REPORT ZBHMOD1 .&lt;/P&gt;&lt;P&gt;DATA:OKCODE1 LIKE SY-UCOMM,&lt;/P&gt;&lt;P&gt;OKCODE2 LIKE SY-UCOMM.&lt;/P&gt;&lt;P&gt;DATA:N1(10) TYPE N,N2(10) TYPE N,RES(12) TYPE N.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1000 INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE OKCODE1.&lt;/P&gt;&lt;P&gt;WHEN 'NEXT'.&lt;/P&gt;&lt;P&gt;RES = N1 + N2.&lt;/P&gt;&lt;P&gt;SET SCREEN 1001.&lt;/P&gt;&lt;P&gt;WHEN 'CLEA'.&lt;/P&gt;&lt;P&gt;CLEAR:N1,N2.&lt;/P&gt;&lt;P&gt;WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;SET SCREEN '0'.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " USER_COMMAND_1000 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE STATUS_1000 OUTPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SET PF-STATUS 'xxxxxxxx'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SET TITLEBAR 'TIT1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " STATUS_1000 OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1001 INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE OKCODE2.&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;&lt;/P&gt;&lt;P&gt;ENDMODULE. " USER_COMMAND_1001 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE STATUS_1001 OUTPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SET PF-STATUS 'xxxxxxxx'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SET TITLEBAR 'TIT2'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " STATUS_1001 OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLOW LOGIC:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE STATUS_1000.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1000.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE STATUS_1001.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**************************************************************************&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;2)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZBHMOD2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: OKCODE1 TYPE SY-UCOMM,&lt;/P&gt;&lt;P&gt;OKCODE2 TYPE SY-UCOMM,&lt;/P&gt;&lt;P&gt;ENAME(10) TYPE C,&lt;/P&gt;&lt;P&gt;DNAME(10) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE STATUS_1000 OUTPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SET PF-STATUS 'xxxxxxxx'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SET TITLEBAR 'TIT1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " STATUS_1000 OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE STATUS_1001 OUTPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SET PF-STATUS 'xxxxxxxx'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SET TITLEBAR 'TIT2'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " STATUS_1001 OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1000 INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE OKCODE1.&lt;/P&gt;&lt;P&gt;WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;SET SCREEN '0'.&lt;/P&gt;&lt;P&gt;WHEN 'NEXT'.&lt;/P&gt;&lt;P&gt;DNAME = ENAME.&lt;/P&gt;&lt;P&gt;SET SCREEN '1001'.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " USER_COMMAND_1000 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1001 INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE OKCODE2.&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;&lt;/P&gt;&lt;P&gt;ENDMODULE. " USER_COMMAND_1001 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM ON_CTMENU_FORM USING ZDEMO1 TYPE REF TO CL_CTMENU.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL METHOD ZDEMO1-&amp;gt;LOAD_GUI_STATUS&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;PROGRAM = 'ZDEMO1'&lt;/P&gt;&lt;P&gt;STATUS = 'ZDEMO1'&lt;/P&gt;&lt;P&gt;MENU = ZDEMO1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " ON_CTMENU_FORM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FLOW LOGIC:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE STATUS_1000.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1000.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE STATUS_1001.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_1001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Every Screen has a pbo and a pai.&lt;/P&gt;&lt;P&gt;Screen elements are the textbox, buttons, radio buttons and check boxes .....&lt;/P&gt;&lt;P&gt;If we want to pass data from a abap program to a screen element, we have to create a variable with the name we have given in the screen.So whatever the value is present in that variable is reflected on to the screen element.&lt;/P&gt;&lt;P&gt;Here is an example :&lt;/P&gt;&lt;P&gt;Using subscreens and some of the screen elements &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT demo_dynpro_subscreens.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: ok_code TYPE sy-ucomm,&lt;/P&gt;&lt;P&gt;save_ok TYPE sy-ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: number1(4) TYPE n VALUE '0110',&lt;/P&gt;&lt;P&gt;number2(4) TYPE n VALUE '0130',&lt;/P&gt;&lt;P&gt;field(10) TYPE c, field1(10) TYPE c, field2(10) TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL SCREEN 100.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE status_100 OUTPUT.&lt;/P&gt;&lt;P&gt;SET PF-STATUS 'SCREEN_100'.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE fill_0110 OUTPUT.&lt;/P&gt;&lt;P&gt;field = 'Eingabe 1'(001).&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE fill_0120 OUTPUT.&lt;/P&gt;&lt;P&gt;field = field1.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE fill_0130 OUTPUT.&lt;/P&gt;&lt;P&gt;field = 'Eingabe 2'(002).&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE fill_0140 OUTPUT.&lt;/P&gt;&lt;P&gt;field = field2.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE cancel INPUT.&lt;/P&gt;&lt;P&gt;LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE save_ok INPUT.&lt;/P&gt;&lt;P&gt;save_ok = ok_code.&lt;/P&gt;&lt;P&gt;CLEAR ok_code.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_0110 INPUT.&lt;/P&gt;&lt;P&gt;IF save_ok = 'OK1'.&lt;/P&gt;&lt;P&gt;number1 = '0120'.&lt;/P&gt;&lt;P&gt;field1 = field.&lt;/P&gt;&lt;P&gt;CLEAR field.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_0130 INPUT.&lt;/P&gt;&lt;P&gt;IF save_ok = 'OK2'.&lt;/P&gt;&lt;P&gt;number2 = '0140'.&lt;/P&gt;&lt;P&gt;field2 = field.&lt;/P&gt;&lt;P&gt;CLEAR field.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_100 INPUT.&lt;/P&gt;&lt;P&gt;CASE save_ok.&lt;/P&gt;&lt;P&gt;WHEN 'SUB1'.&lt;/P&gt;&lt;P&gt;number1 = '0110'.&lt;/P&gt;&lt;P&gt;WHEN 'SUB2'.&lt;/P&gt;&lt;P&gt;number1 = '0120'.&lt;/P&gt;&lt;P&gt;CLEAR field1.&lt;/P&gt;&lt;P&gt;WHEN 'SUB3'.&lt;/P&gt;&lt;P&gt;number2 = '0130'.&lt;/P&gt;&lt;P&gt;WHEN 'SUB4'.&lt;/P&gt;&lt;P&gt;number2 = '0140'.&lt;/P&gt;&lt;P&gt;CLEAR field2.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;flow logic for screen 100 &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE STATUS_100.&lt;/P&gt;&lt;P&gt;CALL SUBSCREEN: AREA1 INCLUDING SY-REPID NUMBER1,&lt;/P&gt;&lt;P&gt;AREA2 INCLUDING SY-REPID NUMBER2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE CANCEL AT EXIT-COMMAND.&lt;/P&gt;&lt;P&gt;MODULE SAVE_OK.&lt;/P&gt;&lt;P&gt;CALL SUBSCREEN: AREA1,&lt;/P&gt;&lt;P&gt;AREA2.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_100.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;flow logic for screen 110 &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE FILL_0110.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_0110.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;flow logic for screen 120 &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE FILL_0120.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;flow logic for screen 130 &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE FILL_0130.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt;MODULE USER_COMMAND_0130. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;flow logic for screen 140 &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS BEFORE OUTPUT.&lt;/P&gt;&lt;P&gt;MODULE FILL_0140.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROCESS AFTER INPUT.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;Check the below link:&lt;/P&gt;&lt;P&gt;&lt;A href="http://wiki.ittoolbox.com/index.php/FAQ:What_is_module_pool_program_in_abap%3F" target="test_blank"&gt;http://wiki.ittoolbox.com/index.php/FAQ:What_is_module_pool_program_in_abap%3F&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_46c/helpdata/en/35/26b1aaafab52b9e10000009b38f974/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_46c/helpdata/en/35/26b1aaafab52b9e10000009b38f974/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://sap.mis.cmich.edu/sap-abap/abap09/sld011.htm" target="test_blank"&gt;http://sap.mis.cmich.edu/sap-abap/abap09/sld011.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://sap.mis.cmich.edu/sap-abap/abap09/index.htm" target="test_blank"&gt;http://sap.mis.cmich.edu/sap-abap/abap09/index.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can also check the transaction ABAPDOCU which gives you lot of sample programs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also you can see the below examples...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go to se38 and give demo&lt;STRONG&gt;dynpro&lt;/STRONG&gt; and press F4.&lt;/P&gt;&lt;P&gt;YOu will get a list of demo module pool programs.&lt;/P&gt;&lt;P&gt;One more T-Code is ABAPDOCU.&lt;/P&gt;&lt;P&gt;YOu can find more examples there.&lt;/P&gt;&lt;P&gt;See the prgrams:&lt;/P&gt;&lt;P&gt;DEMO_DYNPRO_TABLE_CONTROL_1 Table Control with LOOP Statement &lt;/P&gt;&lt;P&gt;DEMO_DYNPRO_TABLE_CONTROL_2 Table Control with LOOP AT ITAB &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.geocities.com/ZSAPcHAT" target="test_blank"&gt;http://www.geocities.com/ZSAPcHAT&lt;/A&gt; &lt;/P&gt;&lt;P&gt;&lt;A href="http://www.allsaplinks.com/files/using_table_in_screen.pdf" target="test_blank"&gt;http://www.allsaplinks.com/files/using_table_in_screen.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward points if useful&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;Anji&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 06 May 2007 06:20:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/complex-screen-programming/m-p/2225471#M478187</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-05-06T06:20:10Z</dc:date>
    </item>
  </channel>
</rss>

