<?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: multiple line selection and then capturing the selected values in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344688#M173948</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/abap/controls/alvgrid.htm" target="test_blank"&gt;http://www.sapgenie.com/abap/controls/alvgrid.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PLease check the thread above which talks about Selection mode, which determines how rows can be selected.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward points if found helpful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;run the code below&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZTEST_ALV_CHECK                                             *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report  ztest_alv_check                         .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;type-pools: slis.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: x_fieldcat type slis_fieldcat_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      it_fieldcat type slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      l_layout type slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of itab occurs 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      vbeln like vbak-vbeln,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      posnr like vbap-posnr,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      chk(1),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     end of itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select vbeln&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       posnr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       from vbap&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       up to 20 rows&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       into table itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-fieldname = 'CHK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-tabname = 'ITAB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-col_pos = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-input = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-edit = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-checkbox = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append x_fieldcat to it_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear x_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-fieldname = 'VBELN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-seltext_l = 'VBELN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-tabname = 'ITAB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-col_pos = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append x_fieldcat to it_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear x_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-fieldname = 'POSNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-seltext_l = 'POSNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-tabname = 'ITAB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-col_pos = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append x_fieldcat to it_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear x_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;l_layout-window_titlebar = 'Popup window'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  exporting&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    i_callback_program       = sy-repid&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    is_layout                = l_layout&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    i_callback_pf_status_set = 'STATUS'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    i_callback_user_command  = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    it_fieldcat              = it_fieldcat&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_SCREEN_START_COLUMN    = 10&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_SCREEN_START_LINE      = 1&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_SCREEN_END_COLUMN      = 50&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_SCREEN_END_LINE        = 20&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  tables&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    t_outtab                 = itab&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  exceptions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    program_error            = 1&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    others                   = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  message id sy-msgid type sy-msgty number sy-msgno&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endif.&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;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  STATUS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&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;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&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;     --&amp;gt;P_EXTAB    text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form status using p_extab type slis_t_extab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*- Pf status&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  set pf-status 'STATUS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                 " STATUS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  USER_COMMAND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&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;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&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;     --&amp;gt;R_UCOMM      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;RS_SELFIELD  text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form user_command using r_ucomm     like sy-ucomm&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                               rs_selfield type slis_selfield.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  case r_ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when 'BACK' or 'CANC' or 'EXIT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      leave to screen 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when '&amp;amp;IC1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      set parameter id 'AUN' field rs_selfield-value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      call transaction 'VA03' and skip first screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endcase.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    "USER_COMMAND&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 01 Jun 2006 12:10:22 GMT</pubDate>
    <dc:creator>rahulkavuri</dc:creator>
    <dc:date>2006-06-01T12:10:22Z</dc:date>
    <item>
      <title>multiple line selection and then capturing the selected values</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344683#M173943</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Dear all &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  in my alv program ,i need to capture multiple line selections  using checkboxes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have appended check boxes by adding it in the internal table  &amp;amp; filling in field catalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;but problem is i'm not able to capture multiple selected check boxes dynamically,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i could capture only the last selected check box,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;option i found was to use class method get-selected-rows,but i'm unable to use it properly, could anyone explain in detail&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i have already gone through the various examples in sdn but i am not able to work out.&lt;/P&gt;&lt;P&gt;like using parameters etc....&lt;/P&gt;&lt;P&gt;CAN ANY ONE HELP ME WITH THE CODE &lt;/P&gt;&lt;P&gt;help reqired  immediately,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Jun 2006 12:02:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344683#M173943</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-01T12:02:26Z</dc:date>
    </item>
    <item>
      <title>Re: multiple line selection and then capturing the selected values</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344684#M173944</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try this code:&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;P&gt;    I_CALLBACK_PROGRAM                = W_REPID&lt;/P&gt;&lt;P&gt;    I_CALLBACK_PF_STATUS_SET          = 'PF_STATUS'&lt;/P&gt;&lt;P&gt;    I_CALLBACK_USER_COMMAND           = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;FORM USER_COMMAND USING P_UCOMM TYPE SY-UCOMM&lt;/P&gt;&lt;P&gt;                        P_SELFLD TYPE SLIS_SELFIELD.&lt;/P&gt;&lt;P&gt;case p_ucomm.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; when 'SAVE'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;  Data ref1 type ref to cl_gui_alv_grid.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;E_GRID = ref1.&lt;/P&gt;&lt;P&gt;call method ref1-&amp;gt;check_changed_data&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;   modift ztable from table itab.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;endcase.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ravi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Jun 2006 12:06:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344684#M173944</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-01T12:06:37Z</dc:date>
    </item>
    <item>
      <title>Re: multiple line selection and then capturing the selected values</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344685#M173945</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Pls check this thread.&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="819921"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Aswin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Jun 2006 12:07:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344685#M173945</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-01T12:07:53Z</dc:date>
    </item>
    <item>
      <title>Re: multiple line selection and then capturing the selected values</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344686#M173946</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ankur,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You need to select the rows of the grid and call the GET_SELECTED_ROWS to get the list of rows selected.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Set the SEL_MODE in the layout so that selection box appears.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can do this by addding a cusotm button on the toolbar.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ravi&lt;/P&gt;&lt;P&gt;Note :Please mark the helpful answers&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Jun 2006 12:08:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344686#M173946</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-01T12:08:30Z</dc:date>
    </item>
    <item>
      <title>Re: multiple line selection and then capturing the selected values</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344687#M173947</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi&lt;/P&gt;&lt;P&gt;plz refer to this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;u can get sample code too.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;&lt;A class="jive_macro jive_macro_thread" href="https://community.sap.com/" __jive_macro_name="thread" modifiedtitle="true" __default_attr="151903"&gt;&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Jun 2006 12:08:36 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344687#M173947</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-01T12:08:36Z</dc:date>
    </item>
    <item>
      <title>Re: multiple line selection and then capturing the selected values</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344688#M173948</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A href="http://www.sapgenie.com/abap/controls/alvgrid.htm" target="test_blank"&gt;http://www.sapgenie.com/abap/controls/alvgrid.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PLease check the thread above which talks about Selection mode, which determines how rows can be selected.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward points if found helpful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;run the code below&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZTEST_ALV_CHECK                                             *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report  ztest_alv_check                         .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;type-pools: slis.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: x_fieldcat type slis_fieldcat_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      it_fieldcat type slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      l_layout type slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of itab occurs 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      vbeln like vbak-vbeln,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      posnr like vbap-posnr,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      chk(1),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     end of itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select vbeln&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       posnr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       from vbap&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       up to 20 rows&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       into table itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-fieldname = 'CHK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-tabname = 'ITAB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-col_pos = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-input = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-edit = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-checkbox = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append x_fieldcat to it_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear x_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-fieldname = 'VBELN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-seltext_l = 'VBELN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-tabname = 'ITAB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-col_pos = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append x_fieldcat to it_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear x_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-fieldname = 'POSNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-seltext_l = 'POSNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-tabname = 'ITAB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;x_fieldcat-col_pos = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;append x_fieldcat to it_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear x_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;l_layout-window_titlebar = 'Popup window'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  exporting&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    i_callback_program       = sy-repid&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    is_layout                = l_layout&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    i_callback_pf_status_set = 'STATUS'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    i_callback_user_command  = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    it_fieldcat              = it_fieldcat&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_SCREEN_START_COLUMN    = 10&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_SCREEN_START_LINE      = 1&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_SCREEN_END_COLUMN      = 50&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_SCREEN_END_LINE        = 20&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  tables&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    t_outtab                 = itab&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  exceptions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    program_error            = 1&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    others                   = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  message id sy-msgid type sy-msgty number sy-msgno&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endif.&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;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  STATUS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&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;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&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;     --&amp;gt;P_EXTAB    text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form status using p_extab type slis_t_extab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*- Pf status&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  set pf-status 'STATUS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                 " STATUS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  USER_COMMAND&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&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;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&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;     --&amp;gt;R_UCOMM      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;RS_SELFIELD  text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form user_command using r_ucomm     like sy-ucomm&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                               rs_selfield type slis_selfield.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  case r_ucomm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when 'BACK' or 'CANC' or 'EXIT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      leave to screen 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when '&amp;amp;IC1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      set parameter id 'AUN' field rs_selfield-value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      call transaction 'VA03' and skip first screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endcase.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    "USER_COMMAND&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Jun 2006 12:10:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344688#M173948</guid>
      <dc:creator>rahulkavuri</dc:creator>
      <dc:date>2006-06-01T12:10:22Z</dc:date>
    </item>
    <item>
      <title>Re: multiple line selection and then capturing the selected values</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344689#M173949</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Ankur,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; Check this out&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/saphelp_erp2004/helpdata/en/0a/b55312d30911d2b467006094192fe3/content.htm" target="test_blank"&gt;http://help.sap.com/saphelp_erp2004/helpdata/en/0a/b55312d30911d2b467006094192fe3/content.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Santosh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Jun 2006 12:10:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344689#M173949</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-01T12:10:34Z</dc:date>
    </item>
    <item>
      <title>Re: multiple line selection and then capturing the selected values</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344690#M173950</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ankur,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;after checking the check boxes what are yopu doing? are you clicking any Button if so ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;in the Button handler you have to call the method&lt;/P&gt;&lt;P&gt;this is when you use BOXFIELDNAME in your layout.&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;    DATA:ls_row  type lvc_t_row.&lt;/P&gt;&lt;P&gt;          call method grid-&amp;gt;get_selected_rows&lt;/P&gt;&lt;P&gt;            importing&lt;/P&gt;&lt;P&gt;              et_index_rows = ls_row.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it will give the Rows which you have selected.&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Option 2...&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;but here you are using the checkbox...&lt;/P&gt;&lt;P&gt;now it will be some thing like this..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at itab where check = 'X'.&lt;/P&gt;&lt;P&gt;"here you can get the records which you checked...&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and also in your PAI of the screen place this code since check box is in edit mode to update the change to itab this requires.. this should be the First line of your PAI.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: L_VALID TYPE C.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;  CALL METHOD G_GRID-&amp;gt;CHECK_CHANGED_DATA
    IMPORTING
      E_VALID = L_VALID.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Jun 2006 12:30:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344690#M173950</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-01T12:30:39Z</dc:date>
    </item>
    <item>
      <title>Re: multiple line selection and then capturing the selected values</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344691#M173951</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ankur,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the PAI, just after the selection of your user event, button or menu, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;add this code before getting the selected records.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;CALL METHOD grid1-&amp;gt;check_changed_data&lt;/P&gt;&lt;P&gt;             IMPORTING&lt;/P&gt;&lt;P&gt;               e_valid = ws_x.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;where    grid1  TYPE REF TO cl_gui_alv_grid,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now fetch the selected records.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check this code for reference&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;            C O M P A N Y   C O N F I D E N T I A L                **&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;       Care should be taken to prevent its unauthorized use.       **&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;REPORT zfipost MESSAGE-ID f4 NO STANDARD PAGE HEADING .&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;AUTHOR   : Susmitha Susan Thomas&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATE     : August 18, 2005&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;*Abridged Version : This report generates a list in Abap List Viewer of&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                  all the selected records in VBKPF/VBSEG. * *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                  (TRANSACTION ZPPD:Modified from transaction FBV0)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="--------------" /&gt; Class definition--&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_event_receiver DEFINITION DEFERRED.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="------------------" /&gt;Tables--&lt;HR originaltext="------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES:  vbkpf. " Belegkopf&lt;/P&gt;&lt;P&gt;TABLES: tsp1d, pri_params, spopli.&lt;/P&gt;&lt;P&gt;TYPE-POOLS slis.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-------------" /&gt; Global Variables -&lt;HR originaltext="---------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    anzkr(6)     TYPE n,&lt;/P&gt;&lt;P&gt;         lsind        LIKE sy-lsind,&lt;/P&gt;&lt;P&gt;         no_output(1) TYPE c,&lt;/P&gt;&lt;P&gt;         records(1) TYPE c,&lt;/P&gt;&lt;P&gt;         xpick(1)     TYPE c,&lt;/P&gt;&lt;P&gt;         xpickc(1)    TYPE c,&lt;/P&gt;&lt;P&gt;         xbinp(1)     TYPE c,&lt;/P&gt;&lt;P&gt;         rc           LIKE syst-subrc,&lt;/P&gt;&lt;P&gt;         ok_code LIKE sy-ucomm,&lt;/P&gt;&lt;P&gt;         index TYPE i,&lt;/P&gt;&lt;P&gt;         char_x(1)    TYPE c VALUE 'X',&lt;/P&gt;&lt;P&gt;         post         TYPE c,&lt;/P&gt;&lt;P&gt;         ans          TYPE n,&lt;/P&gt;&lt;P&gt;         user(40) TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :BEGIN OF i_doctype OCCURS 0,&lt;/P&gt;&lt;P&gt;         blart LIKE vbkpf-blart,&lt;/P&gt;&lt;P&gt;      END OF i_doctype.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="-----------------" /&gt;AlV Initialization--&lt;HR originaltext="------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  gs_layout TYPE lvc_s_layo,&lt;/P&gt;&lt;P&gt;       gt_fieldcat TYPE lvc_t_fcat,&lt;/P&gt;&lt;P&gt;       gs_fieldcat TYPE lvc_s_fcat,&lt;/P&gt;&lt;P&gt;       gs_index_rows TYPE lvc_t_row,&lt;/P&gt;&lt;P&gt;       l_layout TYPE disvariant,&lt;/P&gt;&lt;P&gt;       g_repid LIKE sy-repid,&lt;/P&gt;&lt;P&gt;       g_max TYPE i VALUE 100,&lt;/P&gt;&lt;P&gt;       ws_row_idx TYPE lvc_t_row ,&lt;/P&gt;&lt;P&gt;       ws_row_no TYPE lvc_t_roid,&lt;/P&gt;&lt;P&gt;       i_excl_func TYPE ui_functions,&lt;/P&gt;&lt;P&gt;       ls_prnt TYPE lvc_s_prnt,&lt;/P&gt;&lt;P&gt;       refresh TYPE c,&lt;/P&gt;&lt;P&gt;       i_fieldcat  TYPE lvc_t_fcat,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      post(1) TYPE c,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       accr_def(1) TYPE c,&lt;/P&gt;&lt;P&gt;       rev_cd(3) TYPE c,&lt;/P&gt;&lt;P&gt;       ch(1) TYPE c.&lt;/P&gt;&lt;P&gt;DATA: list_index LIKE sy-lsind,&lt;/P&gt;&lt;P&gt;      flag TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;      fl TYPE n VALUE 0,&lt;/P&gt;&lt;P&gt;      g_container TYPE scrfname VALUE 'GRID_CONTAINER',&lt;/P&gt;&lt;P&gt;      grid_container TYPE REF TO cl_gui_docking_container,&lt;/P&gt;&lt;P&gt;      grid1  TYPE REF TO cl_gui_alv_grid,&lt;/P&gt;&lt;P&gt;      custom_container1 TYPE REF TO cl_gui_custom_container,&lt;/P&gt;&lt;P&gt;      event_receiver TYPE REF TO lcl_event_receiver,&lt;/P&gt;&lt;P&gt;      gt_vbkpf1 TYPE STANDARD TABLE OF vbkpf WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      i_vbkpf TYPE  TABLE OF vbkpf WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      i_ws_row_idx LIKE ws_row_idx WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;-Internal table containing details of selected documents&lt;/STRONG&gt;&lt;/DEL&gt;--&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF gt_vbkpf OCCURS 0,&lt;/P&gt;&lt;P&gt;         xpick(1) TYPE c,&lt;/P&gt;&lt;P&gt;         belnr LIKE vbkpf-belnr,&lt;/P&gt;&lt;P&gt;         gjahr LIKE vbkpf-gjahr,&lt;/P&gt;&lt;P&gt;         bukrs LIKE vbkpf-bukrs,&lt;/P&gt;&lt;P&gt;         blart LIKE vbkpf-blart,&lt;/P&gt;&lt;P&gt;         budat LIKE vbkpf-budat,&lt;/P&gt;&lt;P&gt;         bldat LIKE vbkpf-bldat,&lt;/P&gt;&lt;P&gt;         bktxt LIKE vbkpf-bktxt,&lt;/P&gt;&lt;P&gt;         waers LIKE vbkpf-waers,&lt;/P&gt;&lt;P&gt;         usnam LIKE vbkpf-usnam,&lt;/P&gt;&lt;P&gt;         xblnr LIKE vbkpf-xblnr,&lt;/P&gt;&lt;P&gt;         rev_code(3) TYPE c,&lt;/P&gt;&lt;P&gt;         rev_rsn(15) TYPE c,&lt;/P&gt;&lt;P&gt;         rev_date(10) TYPE c,&lt;/P&gt;&lt;P&gt;         linecolor(4) TYPE c,&lt;/P&gt;&lt;P&gt;       END OF gt_vbkpf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="-----" /&gt;Table to store long text--&lt;HR originaltext="------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF inline OCCURS 0,&lt;/P&gt;&lt;P&gt;tdformat TYPE tdformat,&lt;/P&gt;&lt;P&gt;tdline TYPE tdline,&lt;/P&gt;&lt;P&gt;END OF inline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: thead LIKE thead OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="-----" /&gt; Records to be posted--&lt;HR originaltext="---------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:   BEGIN OF tbkpf OCCURS 5.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE vbkpf.&lt;/P&gt;&lt;P&gt;DATA:   END   OF tbkpf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------" /&gt; Constants -&lt;HR originaltext="------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS: awtyp_bkpf TYPE awtyp VALUE 'BKPF '.&lt;/P&gt;&lt;P&gt;CONSTANTS: awtyp_space TYPE awtyp VALUE '     '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETER: funcl   LIKE t020-funcl NO-DISPLAY.   "P(ost),D(isplay),U(pd)&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 2.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS:&lt;/P&gt;&lt;P&gt;         p_bukrs     FOR  vbkpf-bukrs,&lt;/P&gt;&lt;P&gt;         p_belnr     FOR  vbkpf-belnr,&lt;/P&gt;&lt;P&gt;         p_gjahr     FOR  vbkpf-gjahr,&lt;/P&gt;&lt;P&gt;         p_budat     FOR  vbkpf-budat,&lt;/P&gt;&lt;P&gt;         p_bldat     FOR  vbkpf-bldat,&lt;/P&gt;&lt;P&gt;         p_blart     FOR  vbkpf-blart,&lt;/P&gt;&lt;P&gt;         p_xblnr     FOR  vbkpf-xblnr,&lt;/P&gt;&lt;P&gt;         p_bktxt     FOR  vbkpf-bktxt,&lt;/P&gt;&lt;P&gt;         p_usnam     FOR  vbkpf-usnam.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK blk&lt;/P&gt;&lt;P&gt;            WITH FRAME TITLE text-010 NO INTERVALS.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 1(35) text-002.&lt;/P&gt;&lt;P&gt;PARAMETER norm_doc    TYPE c&lt;/P&gt;&lt;P&gt;          RADIOBUTTON GROUP doc DEFAULT 'X' .&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 1(35) text-001.&lt;/P&gt;&lt;P&gt;PARAMETER ad_doc       TYPE c&lt;/P&gt;&lt;P&gt;           RADIOBUTTON GROUP doc .&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 1(35) text-003.&lt;/P&gt;&lt;P&gt;PARAMETER all_doc       TYPE c&lt;/P&gt;&lt;P&gt;            RADIOBUTTON GROUP doc .&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK blk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      CLASS lcl_event_receiver DEFINITION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      For capturing events on the ALV                               *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_event_receiver DEFINITION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PUBLIC SECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    METHODS:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;to capture all recently changed data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      handle_data_changed      FOR EVENT data_changed OF&lt;/P&gt;&lt;P&gt;                                       cl_gui_alv_grid&lt;/P&gt;&lt;P&gt;                                       IMPORTING er_data_changed,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;for hot spot&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      handle_hotspot           FOR EVENT hotspot_click OF&lt;/P&gt;&lt;P&gt;                                       cl_gui_alv_grid&lt;/P&gt;&lt;P&gt;                                       IMPORTING e_column_id e_row_id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDCLASS.   " lcl_event_receiver (Definition)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      CLASS lcl_event_receiver (Implementation)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      For capturing events on the ALV                               *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS lcl_event_receiver IMPLEMENTATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  METHOD handle_data_changed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f2200_handle_data_changed USING er_data_changed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDMETHOD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  METHOD handle_hotspot.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f2201_handle_hotspot USING e_column_id e_row_id .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDMETHOD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDCLASS.  " lcl_event_receiver (Implementation)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;AT SELECTION-SCREEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;START-OF-SELECTION&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="------------------------" /&gt; Colors -&lt;HR originaltext="--------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORMAT COLOR COL_NORMAL INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;-------------------- Status und Title Bar----------------------------*&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SET PF-STATUS funcl.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR  funcl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="------------------" /&gt; Read Records--&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;  SELECT * FROM vbkpf INTO TABLE gt_vbkpf1&lt;/P&gt;&lt;P&gt;      WHERE bukrs IN p_bukrs&lt;/P&gt;&lt;P&gt;        AND ausbk IN p_bukrs&lt;/P&gt;&lt;P&gt;        AND belnr IN p_belnr&lt;/P&gt;&lt;P&gt;        AND gjahr IN p_gjahr&lt;/P&gt;&lt;P&gt;        AND budat IN p_budat&lt;/P&gt;&lt;P&gt;        AND bldat IN p_bldat&lt;/P&gt;&lt;P&gt;        AND blart IN p_blart&lt;/P&gt;&lt;P&gt;        AND bktxt IN p_bktxt&lt;/P&gt;&lt;P&gt;        AND xblnr IN p_xblnr&lt;/P&gt;&lt;P&gt;        AND usnam IN p_usnam&lt;/P&gt;&lt;P&gt;        AND bstat EQ 'V'&lt;/P&gt;&lt;P&gt;      AND ( awtyp IN (awtyp_bkpf, awtyp_space) OR&lt;/P&gt;&lt;P&gt;            awtyp IS null )&lt;/P&gt;&lt;P&gt;      ORDER BY PRIMARY KEY.&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;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------" /&gt;Call the ALV Screen -&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM alv_display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     FORM BELEG_PICKUP                              *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Indicate changing of the selected external record             *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM beleg_pickup.&lt;/P&gt;&lt;P&gt;  SET PARAMETER ID 'BUK' FIELD vbkpf-bukrs.&lt;/P&gt;&lt;P&gt;  SET PARAMETER ID 'GJR' FIELD vbkpf-gjahr.&lt;/P&gt;&lt;P&gt;  SET PARAMETER ID 'BLP' FIELD vbkpf-belnr.&lt;/P&gt;&lt;P&gt;  CASE funcl.&lt;/P&gt;&lt;P&gt;     WHEN 'P'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF anzkr IS INITIAL.&lt;/P&gt;&lt;P&gt;        CALL FUNCTION 'ZPRELIMINARY_POSTING_POST_D'&lt;/P&gt;&lt;P&gt;             EXPORTING&lt;/P&gt;&lt;P&gt;                  bukrs = vbkpf-bukrs&lt;/P&gt;&lt;P&gt;                  belnr = vbkpf-belnr&lt;/P&gt;&lt;P&gt;                  gjahr = vbkpf-gjahr.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        IF sy-ucomm EQ 'BUCH'.&lt;/P&gt;&lt;P&gt;          CALL FUNCTION 'ZPRELIMINARY_POSTING_POST_ALL'&lt;/P&gt;&lt;P&gt;               EXPORTING&lt;/P&gt;&lt;P&gt;                    synch   = char_x&lt;/P&gt;&lt;P&gt;                    bupbi   = xbinp&lt;/P&gt;&lt;P&gt;               TABLES&lt;/P&gt;&lt;P&gt;                    t_vbkpf = tbkpf.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          CALL FUNCTION 'ZPRELIMINARY_POSTING_POST_ALL'&lt;/P&gt;&lt;P&gt;               EXPORTING&lt;/P&gt;&lt;P&gt;                    bupbi   = xbinp&lt;/P&gt;&lt;P&gt;               TABLES&lt;/P&gt;&lt;P&gt;                    t_vbkpf = tbkpf.&lt;/P&gt;&lt;P&gt;         wait up to 3 seconds.&lt;/P&gt;&lt;P&gt;         commit work.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      IF sy-tcode = 'ZPPD'.&lt;/P&gt;&lt;P&gt;        funcl = 'P'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'ZPRELIMINARY_POSTING_DISPLAY'&lt;/P&gt;&lt;P&gt;           EXPORTING&lt;/P&gt;&lt;P&gt;                bukrs = vbkpf-bukrs&lt;/P&gt;&lt;P&gt;                belnr = vbkpf-belnr&lt;/P&gt;&lt;P&gt;                gjahr = vbkpf-gjahr.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDFORM.&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;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    FORM TBKPF_FUELLEN                              *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            Include  records for posting in TBKPF                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM tbkpf_fuellen.&lt;/P&gt;&lt;P&gt;  records = 'X'.&lt;/P&gt;&lt;P&gt;  LOOP AT gt_vbkpf.&lt;/P&gt;&lt;P&gt;    IF gt_vbkpf-xpick = 'X'.&lt;/P&gt;&lt;P&gt;      CLEAR anzkr.&lt;/P&gt;&lt;P&gt;      CLEAR records.&lt;/P&gt;&lt;P&gt;      IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        anzkr = anzkr + 1.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING gt_vbkpf TO tbkpf.&lt;/P&gt;&lt;P&gt;        APPEND tbkpf.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                          FORM MALL                                 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     Select All documents                           *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM mall.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT gt_vbkpf.&lt;/P&gt;&lt;P&gt;    gt_vbkpf-xpick = 'X'.&lt;/P&gt;&lt;P&gt;    MODIFY gt_vbkpf.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  refresh = 'X'.&lt;/P&gt;&lt;P&gt;  CALL METHOD grid1-&amp;gt;refresh_table_display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                         FORM EMAL                                  *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                   Unselect all documents                           *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM emal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT gt_vbkpf.&lt;/P&gt;&lt;P&gt;    gt_vbkpf-xpick = ' '.&lt;/P&gt;&lt;P&gt;    MODIFY gt_vbkpf.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  refresh = 'X'.&lt;/P&gt;&lt;P&gt;  CALL METHOD grid1-&amp;gt;refresh_table_display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     Form  alv_display                               *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              To display the details on an ALV.                      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM alv_display.&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;ENDFORM.                    " alv_display&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Module  PB0_100  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE pb0_100 OUTPUT.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'MAIN100'.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR 'POSTDOC'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="-----------" /&gt;To verify that posting is complete.--&lt;HR originaltext="-------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="--------------" /&gt; Setting the layout -&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF grid1 IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM fill_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="---------" /&gt; Initializing the field catalog--&lt;HR originaltext="-------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM fieldcat_init CHANGING i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="----" /&gt; Initializing the ALV GRID and CONTAINER--&lt;HR originaltext="---------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR gs_layout.&lt;/P&gt;&lt;P&gt;    gs_layout-info_fname = 'linecolor'.&lt;/P&gt;&lt;P&gt;    gs_layout-grid_title = 'Parked Documents'(100).&lt;/P&gt;&lt;P&gt;    gs_layout-zebra               = 'X'.&lt;/P&gt;&lt;P&gt;    gs_layout-cwidth_opt   = 'X'.&lt;/P&gt;&lt;P&gt;    gs_layout-sel_mode = 'A'.&lt;/P&gt;&lt;P&gt;    gs_layout-edit                = 'X'.&lt;/P&gt;&lt;P&gt;    l_layout-report = sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;------ Create a custom container control for ALV Control----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="--------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF cl_gui_alv_grid=&amp;gt;offline( ) IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CREATE OBJECT grid_container&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;           dynnr                     = '100'&lt;/P&gt;&lt;P&gt;           ratio                     = '100'&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;         cntl_error                  = 1&lt;/P&gt;&lt;P&gt;         cntl_system_error           = 2&lt;/P&gt;&lt;P&gt;         create_error                = 3&lt;/P&gt;&lt;P&gt;         lifetime_error              = 4&lt;/P&gt;&lt;P&gt;         lifetime_dynpro_dynpro_link = 5&lt;/P&gt;&lt;P&gt;         others                      = 6.&lt;/P&gt;&lt;P&gt;      IF sy-subrc NE 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     MESSAGE i000 WITH text-007.  " Error in object creation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        LEAVE LIST-PROCESSING.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="----" /&gt; Create an instance of alv control--&lt;HR originaltext="--------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CREATE OBJECT grid1&lt;/P&gt;&lt;P&gt;             EXPORTING&lt;/P&gt;&lt;P&gt;                i_lifetime = 1&lt;/P&gt;&lt;P&gt;                i_parent = grid_container.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----" /&gt; Disable all unwanted button in the ALV grid -&lt;HR originaltext="--------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM disable_functions TABLES i_excl_func.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----" /&gt; Call the display function of ALV grid -&lt;HR originaltext="--------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_table_for_first_display&lt;/P&gt;&lt;P&gt;           EXPORTING&lt;/P&gt;&lt;P&gt;                     is_variant       = l_layout&lt;/P&gt;&lt;P&gt;                     i_save           = 'A'&lt;/P&gt;&lt;P&gt;                     is_layout        = gs_layout&lt;/P&gt;&lt;P&gt;                     is_print         = ls_prnt&lt;/P&gt;&lt;P&gt;                     it_toolbar_excluding          = i_excl_func&lt;/P&gt;&lt;P&gt;           CHANGING  it_outtab        = gt_vbkpf[]&lt;/P&gt;&lt;P&gt;                     it_fieldcatalog  = i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.                  "  IF cl_gui_alv_grid=&amp;gt;offline IS INITIAL&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL METHOD grid1-&amp;gt;register_edit_event&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;         i_event_id = cl_gui_alv_grid=&amp;gt;mc_evt_enter.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL METHOD grid1-&amp;gt;register_edit_event&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        i_event_id = cl_gui_alv_grid=&amp;gt;mc_evt_modified.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="------" /&gt; Create a reciever object to handle events -&lt;HR originaltext="--------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CREATE OBJECT event_receiver.&lt;/P&gt;&lt;P&gt;    SET HANDLER event_receiver-&amp;gt;handle_data_changed FOR grid1.&lt;/P&gt;&lt;P&gt;    SET HANDLER event_receiver-&amp;gt;handle_hotspot FOR grid1.&lt;/P&gt;&lt;P&gt;    CALL METHOD cl_gui_control=&amp;gt;set_focus EXPORTING control = grid1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.                   " IF grid1 IS INITIAL.&lt;/P&gt;&lt;P&gt;ENDMODULE.                 " PB0_100  OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_table&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Fills the data table to be passed to the ALV grid.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fill_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT gt_vbkpf1.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING gt_vbkpf1 TO gt_vbkpf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF ad_doc = 'X' OR all_doc = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      thead-tdobject = 'BELEG'.&lt;/P&gt;&lt;P&gt;      CONCATENATE gt_vbkpf1-bukrs&lt;/P&gt;&lt;P&gt;                  gt_vbkpf1-belnr&lt;/P&gt;&lt;P&gt;                  gt_vbkpf1-gjahr INTO thead-tdname.&lt;/P&gt;&lt;P&gt;      thead-tdspras = sy-langu.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      thead-tdid = '0004'.&lt;/P&gt;&lt;P&gt;      PERFORM read_text.&lt;/P&gt;&lt;P&gt;      READ TABLE inline INDEX 1.&lt;/P&gt;&lt;P&gt;      gt_vbkpf-rev_code =  inline-tdline.&lt;/P&gt;&lt;P&gt;      REFRESH inline.&lt;/P&gt;&lt;P&gt;      CLEAR inline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      thead-tdid = '0005'.&lt;/P&gt;&lt;P&gt;      PERFORM read_text.&lt;/P&gt;&lt;P&gt;      READ TABLE inline INDEX 1.&lt;/P&gt;&lt;P&gt;      gt_vbkpf-rev_rsn =  inline-tdline.&lt;/P&gt;&lt;P&gt;      REFRESH inline.&lt;/P&gt;&lt;P&gt;      CLEAR inline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      thead-tdid = '0006'.&lt;/P&gt;&lt;P&gt;      PERFORM read_text.&lt;/P&gt;&lt;P&gt;      READ TABLE inline INDEX 1.&lt;/P&gt;&lt;P&gt;      gt_vbkpf-rev_date =  inline-tdline.&lt;/P&gt;&lt;P&gt;      REFRESH inline.&lt;/P&gt;&lt;P&gt;      CLEAR inline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      REFRESH inline.&lt;/P&gt;&lt;P&gt;      CLEAR inline.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND gt_vbkpf.&lt;/P&gt;&lt;P&gt;    CLEAR gt_vbkpf.&lt;/P&gt;&lt;UL&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;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fieldcat_init&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Initialize the field catalog&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fieldcat_init CHANGING i_fieldcat TYPE lvc_t_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: i_fldcat TYPE lvc_t_fcat WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CHECKBOX&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'XPICK'.&lt;/P&gt;&lt;P&gt;  i_fldcat-checkbox  = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-tabname   = 'GT_VBKPF'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   =  '4'.&lt;/P&gt;&lt;P&gt;  i_fldcat-scrtext_l =  'ChkB'.&lt;/P&gt;&lt;P&gt;   APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'BELNR'.&lt;/P&gt;&lt;P&gt;  i_fldcat-tabname   = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-hotspot   = 'X'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   =  '15'.&lt;/P&gt;&lt;P&gt;  i_fldcat-scrtext_l =  'Document Number'.&lt;/P&gt;&lt;P&gt;  APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'GJAHR'.&lt;/P&gt;&lt;P&gt;  i_fldcat-tabname   = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-scrtext_l = 'FYear'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   = '5'.&lt;/P&gt;&lt;P&gt;  APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  i_fldcat-tabname   = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-scrtext_l = 'CCode'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   =  '5'.&lt;/P&gt;&lt;P&gt;  APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'BLART'.&lt;/P&gt;&lt;P&gt;  i_fldcat-tabname   = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-scrtext_l = 'Type'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   =  '6'.&lt;/P&gt;&lt;P&gt;  APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'BLDAT'.&lt;/P&gt;&lt;P&gt;  i_fldcat-tabname  = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key      = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-scrtext_l = 'Doc Date'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   =  '12'.&lt;/P&gt;&lt;P&gt;  APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'BUDAT'.&lt;/P&gt;&lt;P&gt;  i_fldcat-tabname  = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key      = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-scrtext_l = 'Park Date'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   =  '12'.&lt;/P&gt;&lt;P&gt;  APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'BKTXT'.&lt;/P&gt;&lt;P&gt;  i_fldcat-tabname  = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key      = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-scrtext_l = 'Document Header Text'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   =  '25'.&lt;/P&gt;&lt;P&gt;  APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'WAERS'.&lt;/P&gt;&lt;P&gt;  i_fldcat-tabname  = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key      = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-scrtext_l = 'Curr'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   =  '7'.&lt;/P&gt;&lt;P&gt;  APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'USNAM'.&lt;/P&gt;&lt;P&gt;  i_fldcat-tabname   = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-scrtext_l = 'Parked By'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   =  '13'.&lt;/P&gt;&lt;P&gt;  APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;  i_fldcat-fieldname = 'XBLNR'.&lt;/P&gt;&lt;P&gt;  i_fldcat-tabname   = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; i_fldcat-key       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_fldcat-scrtext_l = 'Reference Text'.&lt;/P&gt;&lt;P&gt;  i_fldcat-outputlen   =  '19'.&lt;/P&gt;&lt;P&gt;  APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF ad_doc = 'X' OR all_doc = 'X'.&lt;/P&gt;&lt;P&gt;    CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;    i_fldcat-fieldname = 'REV_CODE'.&lt;/P&gt;&lt;P&gt;    i_fldcat-tabname   = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   i_fldcat-key       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    i_fldcat-scrtext_l = 'RC'.&lt;/P&gt;&lt;P&gt;    i_fldcat-outputlen   =  '2'.&lt;/P&gt;&lt;P&gt;    APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;    i_fldcat-fieldname = 'REV_RSN'.&lt;/P&gt;&lt;P&gt;    i_fldcat-tabname   = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   i_fldcat-key       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    i_fldcat-scrtext_l = 'Rev Reason'.&lt;/P&gt;&lt;P&gt;    i_fldcat-outputlen   =  '15'.&lt;/P&gt;&lt;P&gt;    APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR i_fldcat.&lt;/P&gt;&lt;P&gt;    i_fldcat-fieldname = 'REV_DATE'.&lt;/P&gt;&lt;P&gt;    i_fldcat-tabname   = 'GT_VBKPF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   i_fldcat-key       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    i_fldcat-scrtext_l = 'Rev Date'.&lt;/P&gt;&lt;P&gt;    i_fldcat-outputlen   =  '10'.&lt;/P&gt;&lt;P&gt;    APPEND i_fldcat TO i_fieldcat.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fieldcat_init&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Module  PAI_100  INPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE pai_100 INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;      IF sy-dynnr = '1000'.&lt;/P&gt;&lt;P&gt;        PERFORM exit_program.&lt;/P&gt;&lt;P&gt;      ELSEIF sy-dynnr = '0100'.&lt;/P&gt;&lt;P&gt;        LEAVE TO TRANSACTION 'ZPPD'.&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;      IF sy-dynnr = '1000'.&lt;/P&gt;&lt;P&gt;        PERFORM exit_program.&lt;/P&gt;&lt;P&gt;      ELSEIF sy-dynnr = '0100'.&lt;/P&gt;&lt;P&gt;        LEAVE TO TRANSACTION 'ZPPD'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '%EX'.&lt;/P&gt;&lt;P&gt;      IF sy-dynnr = '1000'.&lt;/P&gt;&lt;P&gt;        PERFORM exit_program.&lt;/P&gt;&lt;P&gt;      ELSEIF sy-dynnr = '0100'.&lt;/P&gt;&lt;P&gt;        LEAVE TO TRANSACTION 'ZPPD'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'BINP'.&lt;/P&gt;&lt;P&gt;      DATA : ws_x TYPE c VALUE 'X'.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;          EXPORTING&lt;/P&gt;&lt;P&gt;               titlebar      = 'Posting Documents Via Batch Input'&lt;/P&gt;&lt;P&gt;               text_question =&lt;/P&gt;&lt;P&gt;           'Are you sure you want to post all the selected documents?'&lt;/P&gt;&lt;P&gt;               text_button_1 = 'Yes'&lt;/P&gt;&lt;P&gt;               text_button_2 = 'No'&lt;/P&gt;&lt;P&gt;               start_column  = 25&lt;/P&gt;&lt;P&gt;               start_row     = 6&lt;/P&gt;&lt;P&gt;          IMPORTING&lt;/P&gt;&lt;P&gt;               answer        = ans.&lt;/P&gt;&lt;P&gt;      IF ans = '1'.&lt;/P&gt;&lt;P&gt;        CALL METHOD grid1-&amp;gt;check_changed_data&lt;/P&gt;&lt;P&gt;             IMPORTING&lt;/P&gt;&lt;P&gt;               e_valid = ws_x.&lt;/P&gt;&lt;P&gt;        xbinp = 'X'.&lt;/P&gt;&lt;P&gt;        PERFORM tbkpf_fuellen.&lt;/P&gt;&lt;P&gt;        IF records = 'X'.&lt;/P&gt;&lt;P&gt;          MESSAGE s999(zv) WITH text-007.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          PERFORM beleg_pickup.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'MALL'.&lt;/P&gt;&lt;P&gt;      PERFORM mall.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'EMAL'.&lt;/P&gt;&lt;P&gt;      PERFORM emal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'RW'.&lt;/P&gt;&lt;P&gt;      IF sy-dynnr = '1000'.&lt;/P&gt;&lt;P&gt;        PERFORM exit_program.&lt;/P&gt;&lt;P&gt;      ELSEIF sy-dynnr = '0100'.&lt;/P&gt;&lt;P&gt;        LEAVE TO TRANSACTION 'ZPPD'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'BUCH'.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'POPUP_TO_CONFIRM'&lt;/P&gt;&lt;P&gt;           EXPORTING&lt;/P&gt;&lt;P&gt;                titlebar      = 'Posting Document'&lt;/P&gt;&lt;P&gt;                text_question =&lt;/P&gt;&lt;P&gt;            'Are you sure you want to post all documents selected?'&lt;/P&gt;&lt;P&gt;                text_button_1 = 'Yes'&lt;/P&gt;&lt;P&gt;                text_button_2 = 'No'&lt;/P&gt;&lt;P&gt;                start_column  = 25&lt;/P&gt;&lt;P&gt;                start_row     = 6&lt;/P&gt;&lt;P&gt;           IMPORTING&lt;/P&gt;&lt;P&gt;                answer        = ans.&lt;/P&gt;&lt;P&gt;      IF ans = '1'.&lt;/P&gt;&lt;P&gt;        CALL METHOD grid1-&amp;gt;check_changed_data&lt;/P&gt;&lt;P&gt;          IMPORTING&lt;/P&gt;&lt;P&gt;            e_valid = ws_x.&lt;/P&gt;&lt;P&gt;            perform tbkpf_fuellen.&lt;/P&gt;&lt;P&gt;        IF records = 'X'.&lt;/P&gt;&lt;P&gt;          MESSAGE s999(zv) WITH text-007.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          PERFORM beleg_pickup.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'PICK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DATA : check TYPE n,&lt;/P&gt;&lt;P&gt;             no_rec TYPE c.&lt;/P&gt;&lt;P&gt;      check = 0.&lt;/P&gt;&lt;P&gt;      no_rec = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;check_changed_data&lt;/P&gt;&lt;P&gt;        IMPORTING&lt;/P&gt;&lt;P&gt;          e_valid = ws_x.&lt;/P&gt;&lt;P&gt;      index = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT gt_vbkpf.&lt;/P&gt;&lt;P&gt;        funcl = 'D'.&lt;/P&gt;&lt;P&gt;        index = index + 1.&lt;/P&gt;&lt;P&gt;        IF gt_vbkpf-xpick = 'X'.&lt;/P&gt;&lt;P&gt;          check = 1.&lt;/P&gt;&lt;P&gt;          CLEAR no_rec.&lt;/P&gt;&lt;P&gt;          READ TABLE gt_vbkpf1 INDEX index INTO vbkpf.&lt;/P&gt;&lt;P&gt;          PERFORM beleg_pickup.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF check = 0.&lt;/P&gt;&lt;P&gt;        CALL METHOD grid1-&amp;gt;get_selected_rows&lt;/P&gt;&lt;P&gt;          IMPORTING&lt;/P&gt;&lt;P&gt;            et_index_rows = ws_row_idx.&lt;/P&gt;&lt;P&gt;        IF NOT ws_row_idx IS INITIAL.&lt;/P&gt;&lt;P&gt;          CLEAR no_rec.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        LOOP AT ws_row_idx INTO i_ws_row_idx.&lt;/P&gt;&lt;P&gt;          READ TABLE gt_vbkpf1 INDEX i_ws_row_idx-index INTO vbkpf.&lt;/P&gt;&lt;P&gt;          PERFORM beleg_pickup.&lt;/P&gt;&lt;P&gt;        ENDLOOP.&lt;/P&gt;&lt;P&gt;        IF no_rec = 'X'.&lt;/P&gt;&lt;P&gt;          MESSAGE s999(zv) WITH text-007.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;RNT_PREV'.&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_function_code&lt;/P&gt;&lt;P&gt;      CHANGING c_ucomm = ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;RNT'.&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_function_code&lt;/P&gt;&lt;P&gt;      CHANGING c_ucomm = ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '%SC'.&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_function_code&lt;/P&gt;&lt;P&gt;      CHANGING c_ucomm = ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;OL0'.&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_function_code&lt;/P&gt;&lt;P&gt;     CHANGING c_ucomm = ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;OAD'.&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_function_code&lt;/P&gt;&lt;P&gt;      CHANGING c_ucomm = ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;AVE'.&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_function_code&lt;/P&gt;&lt;P&gt;     CHANGING c_ucomm = ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;AQW'.&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_function_code&lt;/P&gt;&lt;P&gt;     CHANGING c_ucomm = ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;XXL'.&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_function_code&lt;/P&gt;&lt;P&gt;     CHANGING c_ucomm = ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '%PC'.&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_function_code&lt;/P&gt;&lt;P&gt;     CHANGING c_ucomm = ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;CRTEMPL'.&lt;/P&gt;&lt;P&gt;      CALL METHOD grid1-&amp;gt;set_function_code&lt;/P&gt;&lt;P&gt;     CHANGING c_ucomm = ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     do nothing.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;  CLEAR ok_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE.                 " PAI_100  INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  exit_program&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Exits from the program after freeing the grid and container     *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM exit_program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT grid_container IS INITIAL.&lt;/P&gt;&lt;P&gt;    CALL METHOD grid_container-&amp;gt;free.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT grid1 IS INITIAL.&lt;/P&gt;&lt;P&gt;    CALL METHOD grid1-&amp;gt;free&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;         cntl_error        = 1&lt;/P&gt;&lt;P&gt;         cntl_system_error = 2&lt;/P&gt;&lt;P&gt;         OTHERS            = 3.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " exit_program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  f2200_handle_data_changed&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      To handle event of change in data in ALV.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_ER_DATA_CHANGED  text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM f2200_handle_data_changed USING    ir_data_changed&lt;/P&gt;&lt;P&gt;                                         TYPE REF TO&lt;/P&gt;&lt;P&gt;                                         cl_alv_changed_data_protocol.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : ls_mod_cell TYPE lvc_s_modi ,&lt;/P&gt;&lt;P&gt;         lv_value TYPE lvc_value,&lt;/P&gt;&lt;P&gt;         lflg_check TYPE i.&lt;/P&gt;&lt;P&gt;  DATA : wa_vbkpf LIKE LINE OF gt_vbkpf.&lt;/P&gt;&lt;P&gt;  SORT ir_data_changed-&amp;gt;mt_mod_cells BY row_id .&lt;/P&gt;&lt;P&gt;  LOOP AT ir_data_changed-&amp;gt;mt_mod_cells&lt;/P&gt;&lt;P&gt;                     INTO ls_mod_cell&lt;/P&gt;&lt;P&gt;                     WHERE fieldname = 'I_PICK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT ls_mod_cell-value IS INITIAL .&lt;/P&gt;&lt;P&gt;      CALL METHOD ir_data_changed-&amp;gt;modify_cell&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          i_row_id    = ls_mod_cell-row_id&lt;/P&gt;&lt;P&gt;          i_fieldname = ls_mod_cell-fieldname&lt;/P&gt;&lt;P&gt;          i_value     = ls_mod_cell-value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE gt_vbkpf INTO wa_vbkpf&lt;/P&gt;&lt;P&gt;                 INDEX ls_mod_cell-row_id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF ls_mod_cell-fieldname = 'I_PICK'.&lt;/P&gt;&lt;P&gt;        wa_vbkpf-xpick = ls_mod_cell-value.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY gt_vbkpf  FROM wa_vbkpf&lt;/P&gt;&lt;P&gt;                          INDEX ls_mod_cell-row_id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF .&lt;/P&gt;&lt;P&gt;  ENDLOOP .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f2200_handle_data_changed&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  f2201_handle_hotspot&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            To handle event of clicking on hyperlink&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_E_COLUMN_ID  text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM f2201_handle_hotspot USING    p_e_column_id  p_e_row_id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE gt_vbkpf1 INDEX p_e_row_id INTO vbkpf.&lt;/P&gt;&lt;P&gt;  funcl = 'D'.&lt;/P&gt;&lt;P&gt;  PERFORM beleg_pickup.&lt;/P&gt;&lt;P&gt;  PERFORM exit_program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f2201_handle_hotspot&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Susmitha&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Dont forget to reward points for useful answers&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Jun 2006 12:31:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/multiple-line-selection-and-then-capturing-the-selected-values/m-p/1344691#M173951</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-01T12:31:37Z</dc:date>
    </item>
  </channel>
</rss>

