<?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: ALV report in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443315#M210656</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi simran,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. We can detect, which row the user has clicked&lt;/P&gt;&lt;P&gt;,  in the call back form routine.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. just copy paste to get a taste of it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Important code is in bold.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT abc.&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;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------" /&gt;&lt;P&gt; Data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF itab OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE t001.&lt;/P&gt;&lt;P&gt;DATA : flag tyPE c,&lt;/P&gt;&lt;P&gt;       END OF itab.&lt;/P&gt;&lt;P&gt;DATA : alvfc TYPE slis_t_fieldcat_alv.&lt;/P&gt;&lt;P&gt;DATA : alvly TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt; Select Data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM t001 INTO TABLE itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Field Catalogue&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    i_program_name         = sy-repid&lt;/P&gt;&lt;P&gt;    i_internal_tabname     = 'ITAB'&lt;/P&gt;&lt;P&gt;    i_inclname             = sy-repid&lt;/P&gt;&lt;P&gt;  CHANGING&lt;/P&gt;&lt;P&gt;    ct_fieldcat            = alvfc&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    inconsistent_interface = 1&lt;/P&gt;&lt;P&gt;    program_error          = 2&lt;/P&gt;&lt;P&gt;    OTHERS                 = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt;Display&lt;/P&gt;&lt;P&gt;alvly-box_fieldname = 'FLAG'.&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;    it_fieldcat             = alvfc&lt;/P&gt;&lt;P&gt;    i_callback_program      = sy-repid "&amp;lt;-------Important&lt;/P&gt;&lt;P&gt;    i_callback_user_command = 'ITAB_USER_COMMAND' "&amp;lt;------ Important&lt;/P&gt;&lt;P&gt;    is_layout               = alvly&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    t_outtab                = itab&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    program_error           = 1&lt;/P&gt;&lt;P&gt;    OTHERS                  = 2.&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;HR originaltext="--------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL BACK FORM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM itab_user_command USING whatcomm TYPE sy-ucomm whatrow TYPE&lt;/P&gt;&lt;P&gt;slis_selfield.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt; IMPORTANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data : m(100) type c.&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;  m =  whatrow-tabindex.&amp;lt;/b&amp;gt; &lt;/P&gt;&lt;P&gt; condense m.&lt;/P&gt;&lt;P&gt;  concatenate 'Row Number is ' m into m separated by space.&lt;/P&gt;&lt;P&gt;concatenate m ' : Field Clicked is ' whatrow-fieldname into m separated&lt;/P&gt;&lt;P&gt;  by space.&lt;/P&gt;&lt;P&gt;  message m type 'I'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "ITAB_user_command&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;regards,&lt;/P&gt;&lt;P&gt;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 07 Jul 2006 05:34:38 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-07-07T05:34:38Z</dc:date>
    <item>
      <title>ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443314#M210655</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi. &lt;/P&gt;&lt;P&gt;I have a specific requirement in my report.&lt;/P&gt;&lt;P&gt;When user selects Customer field(KUNNR) in the list display and presses "Show line item" button on application tool bar it should display the line item details of that specific customer.&lt;/P&gt;&lt;P&gt;Presently when pressing the button it displays for all the customer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pls suggest me how to approach.&lt;/P&gt;&lt;P&gt;Simran&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 05:32:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443314#M210655</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T05:32:23Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443315#M210656</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi simran,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. We can detect, which row the user has clicked&lt;/P&gt;&lt;P&gt;,  in the call back form routine.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. just copy paste to get a taste of it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Important code is in bold.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT abc.&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;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------" /&gt;&lt;P&gt; Data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF itab OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE t001.&lt;/P&gt;&lt;P&gt;DATA : flag tyPE c,&lt;/P&gt;&lt;P&gt;       END OF itab.&lt;/P&gt;&lt;P&gt;DATA : alvfc TYPE slis_t_fieldcat_alv.&lt;/P&gt;&lt;P&gt;DATA : alvly TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt; Select Data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM t001 INTO TABLE itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Field Catalogue&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    i_program_name         = sy-repid&lt;/P&gt;&lt;P&gt;    i_internal_tabname     = 'ITAB'&lt;/P&gt;&lt;P&gt;    i_inclname             = sy-repid&lt;/P&gt;&lt;P&gt;  CHANGING&lt;/P&gt;&lt;P&gt;    ct_fieldcat            = alvfc&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    inconsistent_interface = 1&lt;/P&gt;&lt;P&gt;    program_error          = 2&lt;/P&gt;&lt;P&gt;    OTHERS                 = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt;Display&lt;/P&gt;&lt;P&gt;alvly-box_fieldname = 'FLAG'.&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;    it_fieldcat             = alvfc&lt;/P&gt;&lt;P&gt;    i_callback_program      = sy-repid "&amp;lt;-------Important&lt;/P&gt;&lt;P&gt;    i_callback_user_command = 'ITAB_USER_COMMAND' "&amp;lt;------ Important&lt;/P&gt;&lt;P&gt;    is_layout               = alvly&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    t_outtab                = itab&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    program_error           = 1&lt;/P&gt;&lt;P&gt;    OTHERS                  = 2.&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;HR originaltext="--------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL BACK FORM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM itab_user_command USING whatcomm TYPE sy-ucomm whatrow TYPE&lt;/P&gt;&lt;P&gt;slis_selfield.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt; IMPORTANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data : m(100) type c.&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;  m =  whatrow-tabindex.&amp;lt;/b&amp;gt; &lt;/P&gt;&lt;P&gt; condense m.&lt;/P&gt;&lt;P&gt;  concatenate 'Row Number is ' m into m separated by space.&lt;/P&gt;&lt;P&gt;concatenate m ' : Field Clicked is ' whatrow-fieldname into m separated&lt;/P&gt;&lt;P&gt;  by space.&lt;/P&gt;&lt;P&gt;  message m type 'I'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "ITAB_user_command&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;regards,&lt;/P&gt;&lt;P&gt;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 05:34:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443315#M210656</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T05:34:38Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443316#M210657</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Simran,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How are you selecting the row, do you have a check box which the user selects. IF yes, then you should loop at the internal table and pick only those rows where the check box field is set to X. Then you can get the details pertaining to that customer and display.&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 all the helpful answers&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 05:35:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443316#M210657</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T05:35:25Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443317#M210658</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Amit.&lt;/P&gt;&lt;P&gt;Further to this will it work for list display as well as i can see the FM used is for grid display.&lt;/P&gt;&lt;P&gt;my requirement is list display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Simran&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 05:37:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443317#M210658</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T05:37:37Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443318#M210659</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Absolutely.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Just change the FM name,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  TO REUSE_ALV_LIST_DISPLAY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; (instead of REUSE_ALV_GRID_DISPLAY )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Note : Give in CAPITAL Letter.&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;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 05:54:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443318#M210659</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T05:54:11Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443319#M210660</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;as per ur requirement u can do it by doing double click in that perticular cell. or if u r using alv grid display.&lt;/P&gt;&lt;P&gt;do line selection and then find out that perticular field in that record.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this code can help u :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM usercommand USING r_ucomm LIKE sy-ucomm rs_selfield TYPE&lt;/P&gt;&lt;P&gt;                                             slis_selfield.&lt;/P&gt;&lt;P&gt;  CASE r_ucomm.&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;IC1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      tabindex = rs_selfield-tabindex.&lt;/P&gt;&lt;P&gt;      DATA matno LIKE t_mseg-matnr.&lt;/P&gt;&lt;P&gt;      READ TABLE t_mseg INDEX tabindex.&lt;/P&gt;&lt;P&gt;      matno = t_mseg-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here i'm selecting the data according to material no.&lt;/P&gt;&lt;P&gt;" &amp;amp;IC1 is the func. code for double click."&lt;/P&gt;&lt;P&gt;hope this can help u.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 06:11:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443319#M210660</guid>
      <dc:creator>sushant_singh</dc:creator>
      <dc:date>2006-07-07T06:11:20Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443320#M210661</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;use the below command..&lt;/P&gt;&lt;P&gt; in the AlV grid FM use &lt;/P&gt;&lt;P&gt; I_CALLBACK_USER_COMMAND = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;use the below code..&lt;/P&gt;&lt;P&gt;FORM USER_COMMAND USING R_UCOMM     LIKE SY-UCOMM&lt;/P&gt;&lt;P&gt;                        RS_SELFIELD TYPE SLIS_SELFIELD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE R_UCOMM.&lt;/P&gt;&lt;P&gt; WHEN '&amp;amp;IC1'.&lt;/P&gt;&lt;P&gt;      CLEAR TEMP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      read table it_final2 INDEX RS_SELFIELD-TABINDEX.&lt;/P&gt;&lt;P&gt;SOME TIMES THE double click function for kunnr does not get displayed..&lt;/P&gt;&lt;P&gt;used 1-kunnr instead of 1-week. below line..&lt;/P&gt;&lt;P&gt;IF RS_SELFIELD-SEL_TAB_FIELD = '1-WEEK'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the intrnal table which u want to display &lt;/P&gt;&lt;P&gt;  loop the itab1.&lt;/P&gt;&lt;P&gt;itab2 same structue of itab1.&lt;/P&gt;&lt;P&gt;append itab2.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end case.&lt;/P&gt;&lt;P&gt;call the alv grid FM  using with itab2&lt;/P&gt;&lt;P&gt;kindly allocate points&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 06:26:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443320#M210661</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T06:26:31Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443321#M210662</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Amit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I tried with your suggested code.But the problem is it only executes the first row irrespective of the row you select.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you help on this.&lt;/P&gt;&lt;P&gt;Also the Information message is displaying only the text "Row number" and not the value with it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Simran&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 06:39:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443321#M210662</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T06:39:09Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443322#M210663</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. To get ALL ROWS selected/ticked&lt;/P&gt;&lt;P&gt;   by the user,&lt;/P&gt;&lt;P&gt;   we need to LOOP at ITAB,&lt;/P&gt;&lt;P&gt;   and check the FLAG field for 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. just copy paste&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  (it will give MESSAGE for ALL ROWS selected/ticked,&lt;/P&gt;&lt;P&gt;   along with row number, and field value)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  (same program, only the call back form routine,&lt;/P&gt;&lt;P&gt;  is slightly modified)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT abc.&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;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------" /&gt;&lt;P&gt; Data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF itab OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE t001.&lt;/P&gt;&lt;P&gt;DATA : flag tyPE c,&lt;/P&gt;&lt;P&gt;       END OF itab.&lt;/P&gt;&lt;P&gt;DATA : alvfc TYPE slis_t_fieldcat_alv.&lt;/P&gt;&lt;P&gt;DATA : alvly TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt; Select Data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM t001 INTO TABLE itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Field Catalogue&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    i_program_name         = sy-repid&lt;/P&gt;&lt;P&gt;    i_internal_tabname     = 'ITAB'&lt;/P&gt;&lt;P&gt;    i_inclname             = sy-repid&lt;/P&gt;&lt;P&gt;  CHANGING&lt;/P&gt;&lt;P&gt;    ct_fieldcat            = alvfc&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    inconsistent_interface = 1&lt;/P&gt;&lt;P&gt;    program_error          = 2&lt;/P&gt;&lt;P&gt;    OTHERS                 = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt;Display&lt;/P&gt;&lt;P&gt;alvly-box_fieldname = 'FLAG'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    it_fieldcat             = alvfc&lt;/P&gt;&lt;P&gt;    i_callback_program      = sy-repid "&amp;lt;-------Important&lt;/P&gt;&lt;P&gt;    i_callback_user_command = 'ITAB_USER_COMMAND' "&amp;lt;------ Important&lt;/P&gt;&lt;P&gt;    is_layout               = alvly&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    t_outtab                = itab&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    program_error           = 1&lt;/P&gt;&lt;P&gt;    OTHERS                  = 2.&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;HR originaltext="--------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL BACK FORM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM itab_user_command USING whatcomm TYPE sy-ucomm whatrow TYPE&lt;/P&gt;&lt;P&gt;slis_selfield.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : TABIX TYPE SY-TABIX.&lt;/P&gt;&lt;P&gt;  DATA : S(10) TYPE C.&lt;/P&gt;&lt;P&gt;  DATA : M(100) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt; IMPORTANT.&lt;/P&gt;&lt;P&gt;  LOOP AT ITAB.&lt;/P&gt;&lt;P&gt;    TABIX = SY-TABIX.&lt;/P&gt;&lt;P&gt;    S = TABIX.&lt;/P&gt;&lt;P&gt;    IF ITAB-FLAG = 'X'.&lt;/P&gt;&lt;P&gt;      CONCATENATE 'ROW NUMBER IS ' S INTO M.&lt;/P&gt;&lt;P&gt;      CONCATENATE M ' BUTXT IS ' ITAB-BUTXT INTO M&lt;/P&gt;&lt;P&gt;      SEPARATED BY SPACE.&lt;/P&gt;&lt;P&gt;      MESSAGE M TYPE 'I'.&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;&lt;/P&gt;&lt;P&gt;ENDFORM. "ITAB_user_command&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;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 06:49:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443322#M210663</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T06:49:28Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443323#M210664</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi.&lt;/P&gt;&lt;P&gt;I tried with your suggested code.&lt;/P&gt;&lt;P&gt;Its giving syntax error:&lt;/P&gt;&lt;P&gt;Field "TABINDEX" unknown.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 06:56:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443323#M210664</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T06:56:52Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443324#M210665</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. I tried same, but its not giving any error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. just copy paste this WHOLE Program,&lt;/P&gt;&lt;P&gt;  in a new program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT abc.&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;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------" /&gt;&lt;P&gt; Data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF itab OCCURS 0.&lt;/P&gt;&lt;P&gt;INCLUDE STRUCTURE t001.&lt;/P&gt;&lt;P&gt;DATA : flag tyPE c,&lt;/P&gt;&lt;P&gt;END OF itab.&lt;/P&gt;&lt;P&gt;DATA : alvfc TYPE slis_t_fieldcat_alv.&lt;/P&gt;&lt;P&gt;DATA : alvly TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt; Select Data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM t001 INTO TABLE itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Field Catalogue&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;i_program_name = sy-repid&lt;/P&gt;&lt;P&gt;i_internal_tabname = 'ITAB'&lt;/P&gt;&lt;P&gt;i_inclname = sy-repid&lt;/P&gt;&lt;P&gt;CHANGING&lt;/P&gt;&lt;P&gt;ct_fieldcat = alvfc&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;inconsistent_interface = 1&lt;/P&gt;&lt;P&gt;program_error = 2&lt;/P&gt;&lt;P&gt;OTHERS = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt;Display&lt;/P&gt;&lt;P&gt;alvly-box_fieldname = 'FLAG'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;it_fieldcat = alvfc&lt;/P&gt;&lt;P&gt;i_callback_program = sy-repid "&amp;lt;-------Important&lt;/P&gt;&lt;P&gt;i_callback_user_command = 'ITAB_USER_COMMAND' "&amp;lt;------ Important&lt;/P&gt;&lt;P&gt;is_layout = alvly&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;t_outtab = itab&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;program_error = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&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;HR originaltext="--------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL BACK FORM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM itab_user_command USING whatcomm TYPE sy-ucomm whatrow TYPE&lt;/P&gt;&lt;P&gt;slis_selfield.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : TABIX TYPE SY-TABIX.&lt;/P&gt;&lt;P&gt;DATA : S(10) TYPE C.&lt;/P&gt;&lt;P&gt;DATA : M(100) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt; IMPORTANT.&lt;/P&gt;&lt;P&gt;LOOP AT ITAB.&lt;/P&gt;&lt;P&gt;TABIX = SY-TABIX.&lt;/P&gt;&lt;P&gt;S = TABIX.&lt;/P&gt;&lt;P&gt;IF ITAB-FLAG = 'X'.&lt;/P&gt;&lt;P&gt;CONCATENATE 'ROW NUMBER IS ' S INTO M.&lt;/P&gt;&lt;P&gt;CONCATENATE M ' BUTXT IS ' ITAB-BUTXT INTO M&lt;/P&gt;&lt;P&gt;SEPARATED BY SPACE.&lt;/P&gt;&lt;P&gt;MESSAGE M TYPE 'I'.&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;&lt;/P&gt;&lt;P&gt;ENDFORM. "ITAB_user_command&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;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 07:01:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443324#M210665</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T07:01:55Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443325#M210666</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi.&lt;/P&gt;&lt;P&gt;I have an existing program and needs to add the functionality.Just sending you the code to have an better idea.&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp;      Form  sub_ALV_DISPLAY&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&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;HR originaltext="---------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_ITAB_FCAT = field catalog&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_ITAB_data = Output table for display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;FORM sub_alv_display&lt;/P&gt;&lt;P&gt;                      TABLES  p_itab_data&lt;/P&gt;&lt;P&gt;                      USING   p_itab_fcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:  l_layout  TYPE  slis_layout_alv.  "ALV Layout Struc&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To optimize the column width so that all contents are displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_layout-colwidth_optimize = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To display the selection information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_layout-get_selinfos      =  'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_INTERFACE_CHECK              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE                = ' '  &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     i_callback_program             = v_repid&lt;/P&gt;&lt;P&gt;   i_callback_pf_status_set       = 'SUB_PFSTATUS'&lt;/P&gt;&lt;P&gt;   i_callback_user_command        = 'SUB_USERCOMM'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME               =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   is_layout                      = l_layout&lt;/P&gt;&lt;P&gt;   it_fieldcat                    = p_itab_fcat&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EXCLUDING                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_SPECIAL_GROUPS              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   it_sort                        = itab_sort&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_FILTER                      =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_SEL_HIDE                    =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_DEFAULT                      = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   i_save                         = 'A'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_VARIANT                     = wa_variant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    it_events                      = itab_events&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EVENT_EXIT                  =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_PRINT                       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_REPREP_ID                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_START_COLUMN          = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_START_LINE            = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_END_COLUMN            = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_END_LINE              = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  E_EXIT_CAUSED_BY_CALLER        =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  ES_EXIT_CAUSED_BY_USER         =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      t_outtab                       = p_itab_data&lt;/P&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     program_error                  = 1&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_ALV_DISPLAY&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp;      Form  sub_usercomm&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;User command used in the custom PF status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;FORM sub_usercomm USING p_ucomm LIKE sy-ucomm&lt;/P&gt;&lt;P&gt;                        p_rs TYPE slis_selfield .  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE p_ucomm.&lt;/P&gt;&lt;P&gt;    WHEN c_cninv.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Count of invoices&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM sub_disply_invoices.&lt;/P&gt;&lt;P&gt;    WHEN c_item.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;      PERFORM sub_display_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN c_exit.&lt;/P&gt;&lt;P&gt;      LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_usercomm&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note:&lt;/P&gt;&lt;P&gt;c_item is the line item button on app t/bar which user needs to press after selecting a particular field row.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have to deliver it urgently,otherwise would'nt have bothered you so much.&lt;/P&gt;&lt;P&gt;Simran&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 07:28:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443325#M210666</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T07:28:20Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443326#M210667</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1.&lt;/P&gt;&lt;P&gt;WHEN c_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM sub_display_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. write the below code there itself,&lt;/P&gt;&lt;P&gt;  (instead of the line&lt;/P&gt;&lt;P&gt;  PERFORM sub_display_data.&lt;/P&gt;&lt;P&gt;)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(other wise the variablles passed in the callback form,&lt;/P&gt;&lt;P&gt;  won't be available in your subrutine of display data)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(or else, u can once again pass those variables to your routine also)&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : TABIX TYPE SY-TABIX.&lt;/P&gt;&lt;P&gt;DATA : S(10) TYPE C.&lt;/P&gt;&lt;P&gt;DATA : M(100) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt; IMPORTANT.&lt;/P&gt;&lt;P&gt;LOOP AT ITAB.&lt;/P&gt;&lt;P&gt;TABIX = SY-TABIX.&lt;/P&gt;&lt;P&gt;S = TABIX.&lt;/P&gt;&lt;P&gt;IF ITAB-FLAG = 'X'.&lt;/P&gt;&lt;P&gt;CONCATENATE 'ROW NUMBER IS ' S INTO M.&lt;/P&gt;&lt;P&gt;CONCATENATE M ' BUTXT IS ' ITAB-BUTXT INTO M&lt;/P&gt;&lt;P&gt;SEPARATED BY SPACE.&lt;/P&gt;&lt;P&gt;MESSAGE M TYPE 'I'.&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;&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;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 07:32:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443326#M210667</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T07:32:22Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443327#M210668</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;In my case what should be ITAB-FLAG&lt;/P&gt;&lt;P&gt;and what is the following statement for?&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To display the selection information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_layout-get_selinfos      =  'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Chao!&lt;/P&gt;&lt;P&gt;Simran&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 08:23:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443327#M210668</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T08:23:56Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443328#M210669</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. In my case what should be ITAB-FLAG&lt;/P&gt;&lt;P&gt;and what is the following statement for?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ITAB = name of your internal table&lt;/P&gt;&lt;P&gt;FLAG = the EXTRA 1 CHAR field,&lt;/P&gt;&lt;P&gt;      which is added to the internal table&lt;/P&gt;&lt;P&gt;   (for the purpose of displaying/detecting&lt;/P&gt;&lt;P&gt;   the checkboxes)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. I_layout-get_selinfos = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;to see what selection criteria the user  entered&lt;/P&gt;&lt;P&gt;This info will then appear when the report is printed&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 08:29:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443328#M210669</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T08:29:16Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443329#M210670</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi amit&lt;/P&gt;&lt;P&gt;I have added flag field into the internal table and tried executing the report.However,if i am commenting the subroutine sub_display_data,then list is not getting displayed when i click the "show line item" button.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When i am uncommenting the same it works fine but with the same result where i get details of all the customer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Another thing is i dont have any check box to select the field however i do have a pushbutton at the app t/bar to do the same function (i guess)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If u require any specific data from my end to help me out pls feel free to ask so.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it gets resolved today.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Simran&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 08:45:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443329#M210670</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T08:45:07Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443330#M210671</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Its difficult to analyse&lt;/P&gt;&lt;P&gt;   without the original code.&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;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 08:52:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443330#M210671</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T08:52:08Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443331#M210672</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi.&lt;/P&gt;&lt;P&gt;I am sending you the original code for reference.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  z_custvol          NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;        LINE-SIZE 255&lt;/P&gt;&lt;P&gt;        LINE-COUNT 65&lt;/P&gt;&lt;P&gt;        MESSAGE-ID z_abap_development.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;include&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;INCLUDE zif_routines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Type Pools&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPE-POOLS: slis,rsds,kkblo.&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;Constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;CONSTANTS: c_tax(1)     TYPE c VALUE 'T'," Tag for tax item&lt;/P&gt;&lt;P&gt;        c_pfstatus TYPE sypfkey VALUE 'STAT', " Pf status&lt;/P&gt;&lt;P&gt;           c_cninv(4)   TYPE c  VALUE 'INCN', " OkCode for Count&lt;/P&gt;&lt;P&gt;           c_item(4)    TYPE c  VALUE 'ITEM', " Line item&lt;/P&gt;&lt;P&gt;           c_exit(4)    TYPE c  VALUE 'XIIT', " Exit&lt;/P&gt;&lt;P&gt;           c_koart(1) TYPE c  VALUE 'D',  " Account type&lt;/P&gt;&lt;P&gt;           c_checked(1) TYPE c  VALUE 'X'," check&lt;/P&gt;&lt;P&gt;*Start of changes for CR_3&lt;/P&gt;&lt;P&gt;           c_colp(4)    TYPE c  VALUE 'COLP', " collapse&lt;/P&gt;&lt;P&gt;           c_xpnd(4)    TYPE c  VALUE 'XPND', " expand&lt;/P&gt;&lt;P&gt;*End of changes for CR_3&lt;/P&gt;&lt;P&gt;           c_cr(1)      TYPE c  VALUE 'H'.    " Credit&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES: t001 , " Company Codes&lt;/P&gt;&lt;P&gt;        knb1  ," customer master&lt;/P&gt;&lt;P&gt;        bkpf , " Document Header&lt;/P&gt;&lt;P&gt;        bseg.  " Line Item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table types&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table type for Final data with line item&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES:BEGIN OF ty_data,&lt;/P&gt;&lt;P&gt;        bukrs TYPE bukrs,   " Company Code&lt;/P&gt;&lt;P&gt;        kunnr TYPE kunnr,   " Customer&lt;/P&gt;&lt;P&gt;        blart TYPE blart,   " Document Type&lt;/P&gt;&lt;P&gt;        belnr TYPE belnr_d, " Document No.&lt;/P&gt;&lt;P&gt;        gjahr TYPE gjahr,   " Fiscal Year&lt;/P&gt;&lt;P&gt;        xblnr TYPE xblnr1,  " Reference Doc.&lt;/P&gt;&lt;P&gt;        budat TYPE budat,   " Posting Date&lt;/P&gt;&lt;P&gt;        bldat TYPE bldat,   " Doument Date&lt;/P&gt;&lt;P&gt;        hkont TYPE hkont,   " Account&lt;/P&gt;&lt;P&gt;        kostl TYPE kostl,   " Cost Center&lt;/P&gt;&lt;P&gt;        prctr TYPE prctr,   " Profit Center&lt;/P&gt;&lt;P&gt;        aufnr TYPE aufnr,   " Order&lt;/P&gt;&lt;P&gt;        hwaer TYPE hwaer,   " Local Currency&lt;/P&gt;&lt;P&gt;        dmbtr TYPE dmbtr,   " Amount in LC&lt;/P&gt;&lt;P&gt;        waers TYPE waers,   " doc Currency&lt;/P&gt;&lt;P&gt;        wrbtr TYPE wrbtr,   " Amount&lt;/P&gt;&lt;P&gt;        sgtxt TYPE sgtxt,   " Item text&lt;/P&gt;&lt;P&gt;        name  TYPE name1_gp," Customer name&lt;/P&gt;&lt;P&gt;        flag  TYPE c,       " Marked field&lt;/P&gt;&lt;P&gt;      END OF ty_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table type for Count of Invoices&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES:BEGIN OF ty_cinv,&lt;/P&gt;&lt;P&gt;        bukrs(4)  TYPE c,         " Company code&lt;/P&gt;&lt;P&gt;        kunnr     LIKE bseg-kunnr," customer no.&lt;/P&gt;&lt;P&gt;        cinv      TYPE i,         " Count of invoices&lt;/P&gt;&lt;P&gt;        dmbtr     TYPE dmbtr,     " amount in lc&lt;/P&gt;&lt;P&gt;        name      TYPE name1_gp,  " Customer name&lt;/P&gt;&lt;P&gt;      END OF ty_cinv.&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;Internal table type for bkpf data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES:BEGIN OF ty_bkpf,&lt;/P&gt;&lt;P&gt;        bukrs TYPE bukrs,  " Company code&lt;/P&gt;&lt;P&gt;        belnr TYPE belnr_d," Doc. No.&lt;/P&gt;&lt;P&gt;        gjahr TYPE gjahr,  " Fiscal year&lt;/P&gt;&lt;P&gt;        blart TYPE blart,  " Doc Type&lt;/P&gt;&lt;P&gt;        bldat TYPE bldat,  " Document date&lt;/P&gt;&lt;P&gt;        budat TYPE budat,  " Posting date&lt;/P&gt;&lt;P&gt;        xblnr TYPE xblnr1, " Ref. Doc. No.&lt;/P&gt;&lt;P&gt;        waers TYPE waers,  " Currency key&lt;/P&gt;&lt;P&gt;        hwaer TYPE hwaer,  " Local currency&lt;/P&gt;&lt;P&gt;        monat TYPE monat,  " fiscal period&lt;/P&gt;&lt;P&gt;        stblg TYPE stblg,  " reve doc&lt;/P&gt;&lt;P&gt;      END OF ty_bkpf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table type for bseg data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES:BEGIN OF ty_bseg,&lt;/P&gt;&lt;P&gt;        bukrs TYPE bukrs,  " Company code&lt;/P&gt;&lt;P&gt;        kunnr TYPE kunnr,  " Customer no.&lt;/P&gt;&lt;P&gt;        belnr TYPE belnr_d," Doc. No.&lt;/P&gt;&lt;P&gt;        gjahr TYPE gjahr,  " Fiscal year&lt;/P&gt;&lt;P&gt;        buzei TYPE buzei,  " Line item no.&lt;/P&gt;&lt;P&gt;        buzid TYPE buzid,  " Id of the line item&lt;/P&gt;&lt;P&gt;        bschl TYPE bschl,  " Posting key&lt;/P&gt;&lt;P&gt;        koart TYPE koart,  " Account Type&lt;/P&gt;&lt;P&gt;        gsber TYPE gsber,  " Business area&lt;/P&gt;&lt;P&gt;        dmbtr TYPE dmbtr,  " Amount in local curr&lt;/P&gt;&lt;P&gt;        wrbtr TYPE wrbtr,  " Amount&lt;/P&gt;&lt;P&gt;        hkont TYPE hkont,  " GL Account&lt;/P&gt;&lt;P&gt;        kostl TYPE kostl,  " Cost center&lt;/P&gt;&lt;P&gt;        prctr TYPE prctr,  " Profit center&lt;/P&gt;&lt;P&gt;        aufnr TYPE aufnr,  " Interlnal order&lt;/P&gt;&lt;P&gt;        sgtxt TYPE sgtxt,  " Item text&lt;/P&gt;&lt;P&gt;        shkzg TYPE shkzg,  " Dr/Cr type&lt;/P&gt;&lt;P&gt;        umskz TYPE umskz,  " gl ind&lt;/P&gt;&lt;P&gt;        xzahl TYPE xzahl,  " Ind&lt;/P&gt;&lt;P&gt;      END OF ty_bseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Interal table type for customer&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES: BEGIN OF ty_kunnr,&lt;/P&gt;&lt;P&gt;         kunnr TYPE kunnr ,    "customer&lt;/P&gt;&lt;P&gt;         name  TYPE name1_gp , "customer name&lt;/P&gt;&lt;P&gt;       END OF ty_kunnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table and work areas&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Interal table for customer&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: wa_kunnr TYPE ty_kunnr.&lt;/P&gt;&lt;P&gt;DATA: itab_kunnr TYPE TABLE OF ty_kunnr INITIAL SIZE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table type for Final data with line item&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: itab_data TYPE TABLE OF ty_data INITIAL SIZE 0 .&lt;/P&gt;&lt;P&gt;DATA: wa_data TYPE ty_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Tables for BKPF and BSEG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: itab_bkpf       TYPE TABLE OF ty_bkpf INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;      itab_bseg_tmp   TYPE TABLE OF ty_bseg INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;      itab_bseg_final TYPE TABLE OF ty_bseg INITIAL SIZE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table for no. of invoices coumpany/customer wise&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: itab_cinv TYPE TABLE OF ty_cinv INITIAL SIZE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Tables for Basic list displaying&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: itab_fieldcat TYPE slis_t_fieldcat_alv,      " For Field Catalog&lt;/P&gt;&lt;P&gt;      itab_fcat_inv TYPE slis_t_fieldcat_alv,      " For Field Catalog&lt;/P&gt;&lt;P&gt;      itab_events   TYPE slis_t_event,             " For Events&lt;/P&gt;&lt;P&gt;      itab_sort     TYPE slis_t_sortinfo_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Work Areas for BKPF amd BSEG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: wa_bkpf       TYPE ty_bkpf, " Work area for itab_bkpf&lt;/P&gt;&lt;P&gt;      wa_bseg_final TYPE ty_bseg. " Work area for itab_bseg_final&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Work area for no. of invoices&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: wa_cinv TYPE ty_cinv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Global variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: v_repid TYPE sycprog,      " Report Id&lt;/P&gt;&lt;P&gt;      v_title TYPE sytitle.      " Program title&lt;/P&gt;&lt;P&gt;*Start of changes for CR_3&lt;/P&gt;&lt;P&gt;DATA: kunnr TYPE kna1-kunnr.&lt;/P&gt;&lt;P&gt;DATA: g_tabname TYPE kkblo_tabname.&lt;/P&gt;&lt;P&gt;DATA: g_row LIKE sy-curow.&lt;/P&gt;&lt;P&gt;DATA: g_reserve TYPE i.&lt;/P&gt;&lt;P&gt;DATA: g_sumline LIKE sy-tabix.&lt;/P&gt;&lt;P&gt;DATA: g_endsum(1) TYPE c.&lt;/P&gt;&lt;P&gt;*End of changes for CR_3&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;Selection screen declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;selections for Customer and company:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK bl1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_bukrs FOR t001-bukrs OBLIGATORY. " Company Code&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_kunnr FOR knb1-kunnr.            " customer&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_gjahr FOR bkpf-gjahr OBLIGATORY. " Fiscal year&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_monat FOR bkpf-monat OBLIGATORY. " Fiscal period&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK bl1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;selections for Customer and company:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK bl2 WITH FRAME TITLE text-023.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_budat FOR bkpf-budat. " Posting Date&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_hkont FOR bseg-hkont. " Account&lt;/P&gt;&lt;P&gt;*Start of changes for CR_3&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_waers FOR bkpf-waers. " Currency&lt;/P&gt;&lt;P&gt;*End of changes for CR_3&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_xblnr FOR bkpf-xblnr. " Reference Doc.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_bschl FOR bseg-bschl. " Posting key&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_umskz FOR bseg-umskz. " Spl GL ind&lt;/P&gt;&lt;P&gt;*Start of changes for CR_3&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: SKIP .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: p_stblg AS CHECKBOX DEFAULT space. " Reversed doc&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN: SKIP .&lt;/P&gt;&lt;P&gt;*End of changes for CR_3&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK bl2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Initialization&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;  v_repid = sy-repid.&lt;/P&gt;&lt;P&gt;  PERFORM sub_splglind_default.&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;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Select the data from bkpf and bseg and store into the internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM sub_select_bkpf_bseg.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;select customer&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM sub_customer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Store the data into the final internal table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT itab_bseg_final[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM sub_final_data.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End-of-selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Build field catalog , build event , display report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_disply_invoices.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sub_select_bkpf_bseg&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Select the document headers into itab_bkpf&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Select the items into itab_bseg&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sub_select_bkpf_bseg .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT bukrs  " Company code&lt;/P&gt;&lt;P&gt;         belnr  " Doc. No.&lt;/P&gt;&lt;P&gt;         gjahr  " Fiscal year&lt;/P&gt;&lt;P&gt;         blart  " Doc Type&lt;/P&gt;&lt;P&gt;         bldat  " Document date&lt;/P&gt;&lt;P&gt;         budat  " Posting date&lt;/P&gt;&lt;P&gt;         xblnr  " Ref. Doc. No.&lt;/P&gt;&lt;P&gt;         waers  " Currency key&lt;/P&gt;&lt;P&gt;         hwaer  " Local curr&lt;/P&gt;&lt;P&gt;         monat  " fiscal period&lt;/P&gt;&lt;P&gt;         stblg  " rev doc&lt;/P&gt;&lt;P&gt;  INTO TABLE itab_bkpf&lt;/P&gt;&lt;P&gt;  FROM bkpf&lt;/P&gt;&lt;P&gt;  WHERE bukrs IN s_bukrs&lt;/P&gt;&lt;P&gt;  AND   gjahr IN s_gjahr&lt;/P&gt;&lt;P&gt;  AND   monat IN s_monat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT s_budat IS  INITIAL.&lt;/P&gt;&lt;P&gt;      DELETE itab_bkpf[] WHERE budat NOT IN s_budat.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT s_xblnr IS  INITIAL.&lt;/P&gt;&lt;P&gt;      DELETE itab_bkpf[] WHERE xblnr NOT IN s_xblnr.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Start of changes for CR_3&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   DELETE itab_bkpf[] WHERE stblg NE ''.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF p_stblg NE c_checked.&lt;/P&gt;&lt;P&gt;      DELETE itab_bkpf[] WHERE stblg NE ''.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;*End of changes for CR_3&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT itab_bkpf BY bukrs " Company code&lt;/P&gt;&lt;P&gt;                      belnr " Doc. No.&lt;/P&gt;&lt;P&gt;                      gjahr." Fiscal year&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT itab_bkpf[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      SELECT bukrs  " Company code&lt;/P&gt;&lt;P&gt;             kunnr  " Customer no.&lt;/P&gt;&lt;P&gt;             belnr  " Doc. No.&lt;/P&gt;&lt;P&gt;             gjahr  " Fiscal year&lt;/P&gt;&lt;P&gt;             buzei  " Line item no.&lt;/P&gt;&lt;P&gt;             buzid  " Id of the line item&lt;/P&gt;&lt;P&gt;             bschl  " Posting key&lt;/P&gt;&lt;P&gt;             koart  " Account Type&lt;/P&gt;&lt;P&gt;             gsber  " Business area&lt;/P&gt;&lt;P&gt;             dmbtr  " Amount in local curr&lt;/P&gt;&lt;P&gt;             wrbtr  " Amount&lt;/P&gt;&lt;P&gt;             hkont  " GL Account&lt;/P&gt;&lt;P&gt;             kostl  " Cost center&lt;/P&gt;&lt;P&gt;             prctr  " Profit center&lt;/P&gt;&lt;P&gt;             aufnr  " Interlnal order&lt;/P&gt;&lt;P&gt;             sgtxt  " Item text&lt;/P&gt;&lt;P&gt;             shkzg  " dr/cr type&lt;/P&gt;&lt;P&gt;             umskz  " gl ind&lt;/P&gt;&lt;P&gt;             xzahl  " Ind&lt;/P&gt;&lt;P&gt;      INTO TABLE itab_bseg_final&lt;/P&gt;&lt;P&gt;      FROM bseg&lt;/P&gt;&lt;P&gt;      FOR ALL ENTRIES IN itab_bkpf&lt;/P&gt;&lt;P&gt;      WHERE bukrs = itab_bkpf-bukrs&lt;/P&gt;&lt;P&gt;      AND   belnr = itab_bkpf-belnr&lt;/P&gt;&lt;P&gt;      AND   gjahr = itab_bkpf-gjahr&lt;/P&gt;&lt;P&gt;      AND   buzei = '1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;        DELETE itab_bseg_final WHERE koart NE c_koart.&lt;/P&gt;&lt;P&gt;        DELETE itab_bseg_final WHERE xzahl NE ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF NOT s_bschl IS INITIAL.&lt;/P&gt;&lt;P&gt;          DELETE itab_bseg_final&lt;/P&gt;&lt;P&gt;          WHERE bschl NOT IN s_bschl.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF NOT s_umskz IS INITIAL.&lt;/P&gt;&lt;P&gt;          DELETE itab_bseg_final&lt;/P&gt;&lt;P&gt;          WHERE umskz NOT IN s_umskz.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF NOT s_hkont IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          DELETE itab_bseg_final&lt;/P&gt;&lt;P&gt;          WHERE hkont NOT IN s_hkont.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF NOT s_kunnr IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          DELETE itab_bseg_final&lt;/P&gt;&lt;P&gt;          WHERE kunnr NOT IN s_kunnr.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SORT itab_bseg_final BY bukrs kunnr.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_select_bkpf_seg&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  sub_final_data&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;Store the data into the final internal table&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 sub_final_data .&lt;/P&gt;&lt;P&gt;  DATA: l_cinv TYPE i VALUE 0,      "Counter&lt;/P&gt;&lt;P&gt;        l_dmbtr TYPE dmbtr VALUE 0. "Amount&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Populate the final table with bkpf and bseg data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT itab_bseg_final INTO wa_bseg_final.&lt;/P&gt;&lt;P&gt;    IF wa_bseg_final-shkzg = c_cr.&lt;/P&gt;&lt;P&gt;      wa_bseg_final-dmbtr = -1 * wa_bseg_final-dmbtr.&lt;/P&gt;&lt;P&gt;      wa_bseg_final-wrbtr = -1 * wa_bseg_final-wrbtr.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    wa_data-bukrs = wa_bseg_final-bukrs.&lt;/P&gt;&lt;P&gt;    wa_data-kunnr = wa_bseg_final-kunnr.&lt;/P&gt;&lt;P&gt;    wa_data-belnr = wa_bseg_final-belnr.&lt;/P&gt;&lt;P&gt;    wa_data-gjahr = wa_bseg_final-gjahr.&lt;/P&gt;&lt;P&gt;    wa_data-hkont = wa_bseg_final-hkont.&lt;/P&gt;&lt;P&gt;    wa_data-kostl = wa_bseg_final-kostl.&lt;/P&gt;&lt;P&gt;    wa_data-prctr = wa_bseg_final-prctr.&lt;/P&gt;&lt;P&gt;    wa_data-aufnr = wa_bseg_final-aufnr.&lt;/P&gt;&lt;P&gt;    wa_data-dmbtr = wa_bseg_final-dmbtr.&lt;/P&gt;&lt;P&gt;    wa_data-wrbtr = wa_bseg_final-wrbtr.&lt;/P&gt;&lt;P&gt;    wa_data-sgtxt = wa_bseg_final-sgtxt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE itab_bkpf INTO wa_bkpf&lt;/P&gt;&lt;P&gt;    WITH KEY bukrs = wa_bseg_final-bukrs&lt;/P&gt;&lt;P&gt;             belnr = wa_bseg_final-belnr&lt;/P&gt;&lt;P&gt;             gjahr = wa_bseg_final-gjahr&lt;/P&gt;&lt;P&gt;    BINARY SEARCH         .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      wa_data-blart = wa_bkpf-blart.&lt;/P&gt;&lt;P&gt;      wa_data-xblnr = wa_bkpf-xblnr.&lt;/P&gt;&lt;P&gt;      wa_data-budat = wa_bkpf-budat.&lt;/P&gt;&lt;P&gt;      wa_data-bldat = wa_bkpf-bldat.&lt;/P&gt;&lt;P&gt;      wa_data-waers = wa_bkpf-waers.&lt;/P&gt;&lt;P&gt;      wa_data-hwaer = wa_bkpf-hwaer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE itab_kunnr INTO wa_kunnr&lt;/P&gt;&lt;P&gt;      WITH KEY kunnr = wa_bseg_final-kunnr&lt;/P&gt;&lt;P&gt;      BINARY SEARCH .&lt;/P&gt;&lt;P&gt;      IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;        wa_data-name = wa_kunnr-name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR wa_kunnr.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      APPEND wa_data TO itab_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Count of invoices&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    l_cinv  = l_cinv  + 1.&lt;/P&gt;&lt;P&gt;    l_dmbtr = l_dmbtr + wa_bseg_final-dmbtr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    AT END OF kunnr.&lt;/P&gt;&lt;P&gt;      PERFORM sub_count_invoices USING l_cinv l_dmbtr       .&lt;/P&gt;&lt;P&gt;      CLEAR: l_cinv , l_dmbtr.&lt;/P&gt;&lt;P&gt;    ENDAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR: wa_data , wa_bseg_final .&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT itab_data BY bukrs " Company code&lt;/P&gt;&lt;P&gt;                    kunnr." customer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT itab_cinv BY bukrs " Company code&lt;/P&gt;&lt;P&gt;                    kunnr." customer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_final_data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sub_count_invoices&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Company/Customer wise count of invoices&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sub_count_invoices USING p_cinv p_dmbtr.&lt;/P&gt;&lt;P&gt;  wa_cinv-name  = wa_data-name.&lt;/P&gt;&lt;P&gt;  wa_cinv-bukrs = wa_data-bukrs.&lt;/P&gt;&lt;P&gt;  wa_cinv-kunnr = wa_data-kunnr.&lt;/P&gt;&lt;P&gt;  wa_cinv-cinv  = p_cinv.&lt;/P&gt;&lt;P&gt;  wa_cinv-dmbtr = p_dmbtr.&lt;/P&gt;&lt;P&gt;  APPEND wa_cinv TO itab_cinv.&lt;/P&gt;&lt;P&gt;  CLEAR wa_cinv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_count_invoices&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sub_display_data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Buiid field catalog , build event , display report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sub_display_data .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;create field catalog from dictionary structure.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM sub_field_catalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Build event&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM sub_build_alv_event_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM sub_display_report.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_display_data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sub_field_catalog&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; create field catalog from dictionary structure.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;FORM sub_field_catalog .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH itab_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 1&lt;/P&gt;&lt;P&gt;                                    'BUKRS'&lt;/P&gt;&lt;P&gt;                                    text-003&lt;/P&gt;&lt;P&gt;                                    12&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 2&lt;/P&gt;&lt;P&gt;                                    'KUNNR'&lt;/P&gt;&lt;P&gt;                                    text-004&lt;/P&gt;&lt;P&gt;                                    10&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 3&lt;/P&gt;&lt;P&gt;                                    'NAME'&lt;/P&gt;&lt;P&gt;                                    text-020&lt;/P&gt;&lt;P&gt;                                    35&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 4&lt;/P&gt;&lt;P&gt;                                    'BLART'&lt;/P&gt;&lt;P&gt;                                    text-005&lt;/P&gt;&lt;P&gt;                                    10&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 5&lt;/P&gt;&lt;P&gt;                                    'BELNR'&lt;/P&gt;&lt;P&gt;                                    text-006&lt;/P&gt;&lt;P&gt;                                    12&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 6&lt;/P&gt;&lt;P&gt;                                    'GJAHR'&lt;/P&gt;&lt;P&gt;                                    text-007&lt;/P&gt;&lt;P&gt;                                    4&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 7&lt;/P&gt;&lt;P&gt;                                    'XBLNR'&lt;/P&gt;&lt;P&gt;                                    text-008&lt;/P&gt;&lt;P&gt;                                    10&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 8&lt;/P&gt;&lt;P&gt;                                    'BUDAT'&lt;/P&gt;&lt;P&gt;                                    text-009&lt;/P&gt;&lt;P&gt;                                    10&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 9&lt;/P&gt;&lt;P&gt;                                    'BLDAT'&lt;/P&gt;&lt;P&gt;                                    text-010&lt;/P&gt;&lt;P&gt;                                    10&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 10&lt;/P&gt;&lt;P&gt;                                    'HKONT'&lt;/P&gt;&lt;P&gt;                                    text-011&lt;/P&gt;&lt;P&gt;                                    10&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 11&lt;/P&gt;&lt;P&gt;                                    'KOSTL'&lt;/P&gt;&lt;P&gt;                                    text-012&lt;/P&gt;&lt;P&gt;                                    10&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 12&lt;/P&gt;&lt;P&gt;                                    'PRCTR'&lt;/P&gt;&lt;P&gt;                                    text-013&lt;/P&gt;&lt;P&gt;                                    15&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 13&lt;/P&gt;&lt;P&gt;                                    'AUFNR'&lt;/P&gt;&lt;P&gt;                                    text-014&lt;/P&gt;&lt;P&gt;                                    10&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 14&lt;/P&gt;&lt;P&gt;                                    'HWAER'&lt;/P&gt;&lt;P&gt;                                    text-015&lt;/P&gt;&lt;P&gt;                                    5&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 15&lt;/P&gt;&lt;P&gt;                                    'DMBTR'&lt;/P&gt;&lt;P&gt;                                    text-016&lt;/P&gt;&lt;P&gt;                                    16&lt;/P&gt;&lt;P&gt;                                    c_checked.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 16&lt;/P&gt;&lt;P&gt;                                    'WAERS'&lt;/P&gt;&lt;P&gt;                                    text-017&lt;/P&gt;&lt;P&gt;                                    8&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 17&lt;/P&gt;&lt;P&gt;                                    'WRBTR'&lt;/P&gt;&lt;P&gt;                                    text-018&lt;/P&gt;&lt;P&gt;                                    16&lt;/P&gt;&lt;P&gt;                                    c_checked.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fieldcat&lt;/P&gt;&lt;P&gt;                              USING 18&lt;/P&gt;&lt;P&gt;                                    'SGTXT'&lt;/P&gt;&lt;P&gt;                                    text-019&lt;/P&gt;&lt;P&gt;                                    20&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_field_catalog&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sub_display_report&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Display report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sub_display_report .&lt;/P&gt;&lt;P&gt;  DATA: l_sort     TYPE slis_sortinfo_alv. " alv sort table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT itab_data BY bukrs&lt;/P&gt;&lt;P&gt;                    kunnr&lt;/P&gt;&lt;P&gt;                    belnr.&lt;/P&gt;&lt;P&gt;  REFRESH itab_sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  l_sort-fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  l_sort-up        = 'X'.&lt;/P&gt;&lt;P&gt;  l_sort-subtot    = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  APPEND l_sort TO itab_sort.&lt;/P&gt;&lt;P&gt;  CLEAR l_sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  l_sort-fieldname = 'KUNNR'.&lt;/P&gt;&lt;P&gt;  l_sort-up        = 'X'.&lt;/P&gt;&lt;P&gt;  l_sort-subtot    = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  APPEND l_sort TO itab_sort.&lt;/P&gt;&lt;P&gt;  CLEAR l_sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Start of changes for CR_3&lt;/P&gt;&lt;P&gt;  l_sort-fieldname = 'WAERS'.&lt;/P&gt;&lt;P&gt;  l_sort-up        = 'X'.&lt;/P&gt;&lt;P&gt;  l_sort-subtot    = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  APPEND l_sort TO itab_sort.&lt;/P&gt;&lt;P&gt;  CLEAR l_sort.&lt;/P&gt;&lt;P&gt;*End of changes for CR_3&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ALV list display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM sub_alv_display TABLES itab_data&lt;/P&gt;&lt;P&gt;  USING itab_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;ENDFORM.                    " sub_display_report&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sub_pfstatus&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Set PF Status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sub_pfstatus USING p_itab_extab TYPE slis_t_extab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SET PF-STATUS c_pfstatus.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_pfstatus&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sub_usercomm&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;User command used in the custom PF status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sub_usercomm USING p_ucomm LIKE sy-ucomm&lt;/P&gt;&lt;P&gt;                        p_rs TYPE slis_selfield .&lt;/P&gt;&lt;P&gt;*Start of changes&lt;/P&gt;&lt;P&gt;  DATA: l_row(10) TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE p_ucomm.&lt;/P&gt;&lt;P&gt;    WHEN c_cninv.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Count of invoices&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM sub_disply_invoices.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN c_item.&lt;/P&gt;&lt;P&gt;      PERFORM sub_display_data.&lt;/P&gt;&lt;P&gt;    WHEN c_exit.&lt;/P&gt;&lt;P&gt;      LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_usercomm&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp;      Form  sub_disply_invoices&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Display Count of invoices&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;FORM sub_disply_invoices .&lt;/P&gt;&lt;P&gt;  DATA: l_sort     TYPE slis_sortinfo_alv, " alv sort table&lt;/P&gt;&lt;P&gt;        l_layout   TYPE slis_layout_alv.   " alv layout&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH itab_fcat_inv.&lt;/P&gt;&lt;P&gt;  REFRESH itab_sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fcat_inv&lt;/P&gt;&lt;P&gt;                              USING 1&lt;/P&gt;&lt;P&gt;                                    'BUKRS'&lt;/P&gt;&lt;P&gt;                                    text-003&lt;/P&gt;&lt;P&gt;                                    12&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fcat_inv&lt;/P&gt;&lt;P&gt;                              USING 2&lt;/P&gt;&lt;P&gt;                                    'KUNNR'&lt;/P&gt;&lt;P&gt;                                    text-004&lt;/P&gt;&lt;P&gt;                                    10&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fcat_inv&lt;/P&gt;&lt;P&gt;                              USING 3&lt;/P&gt;&lt;P&gt;                                    'NAME'&lt;/P&gt;&lt;P&gt;                                    text-020&lt;/P&gt;&lt;P&gt;                                    35&lt;/P&gt;&lt;P&gt;                                    space.&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fcat_inv&lt;/P&gt;&lt;P&gt;                              USING 4&lt;/P&gt;&lt;P&gt;                                    'CINV'&lt;/P&gt;&lt;P&gt;                                    text-021&lt;/P&gt;&lt;P&gt;                                    5&lt;/P&gt;&lt;P&gt;                                    c_checked.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_populate_fldcat TABLES itab_fcat_inv&lt;/P&gt;&lt;P&gt;                              USING 6&lt;/P&gt;&lt;P&gt;                                    'DMBTR'&lt;/P&gt;&lt;P&gt;                                    text-022&lt;/P&gt;&lt;P&gt;                                    20&lt;/P&gt;&lt;P&gt;                                    c_checked.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  l_sort-fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  l_sort-up        = 'X'.&lt;/P&gt;&lt;P&gt;  l_sort-subtot    = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  APPEND l_sort TO itab_sort.&lt;/P&gt;&lt;P&gt;  CLEAR l_sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_build_alv_event_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ALV list display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM sub_alv_display TABLES itab_cinv&lt;/P&gt;&lt;P&gt;  USING itab_fcat_inv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_disply_invoices&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp;      Form  sub_customer&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;  Retrieve customer name&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 sub_customer .&lt;/P&gt;&lt;P&gt;  itab_bseg_tmp[] = itab_bseg_final[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT itab_bseg_tmp[] BY bukrs kunnr.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM itab_bseg_tmp COMPARING bukrs kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT itab_bseg_tmp[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT kunnr " Customer code&lt;/P&gt;&lt;P&gt;           name1 " Customer name&lt;/P&gt;&lt;P&gt;           FROM kna1&lt;/P&gt;&lt;P&gt;           INTO TABLE itab_kunnr&lt;/P&gt;&lt;P&gt;           FOR ALL ENTRIES IN itab_bseg_tmp&lt;/P&gt;&lt;P&gt;           WHERE kunnr = itab_bseg_tmp-kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      SORT itab_kunnr BY kunnr.&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;  REFRESH itab_bseg_tmp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_customer&lt;/P&gt;&lt;P&gt;*********************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Form: SUB_BUILD_ALV_EVENT_TAB                                      **&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                    **&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Description:&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; This subroutine is used to populate the ALV Events table with the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; TOP_OF_PAGE event.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*********************************************************&lt;/P&gt;&lt;P&gt;FORM sub_build_alv_event_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local Constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CONSTANTS:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Form Name for TOP_OF_PAGE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    c_loc_topofpage   TYPE  slis_formname&lt;/P&gt;&lt;P&gt;                            VALUE  'SUB_TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;    loc_event         TYPE  slis_alv_event.  "Event Structure&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH itab_events.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      i_list_type     = 0&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      et_events       = itab_events&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      list_type_wrong = 1&lt;/P&gt;&lt;P&gt;      OTHERS          = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  TOP_OF_PAGE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    READ TABLE itab_events INTO loc_event&lt;/P&gt;&lt;P&gt;    WITH KEY name = slis_ev_top_of_page.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      MOVE c_loc_topofpage TO loc_event-form.&lt;/P&gt;&lt;P&gt;      MODIFY itab_events FROM loc_event TRANSPORTING form name&lt;/P&gt;&lt;P&gt;      WHERE  name  =  slis_ev_top_of_page.&lt;/P&gt;&lt;P&gt;    ENDIF.&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;ENDFORM.                    " sub_build_alv_event_tab&lt;/P&gt;&lt;P&gt;*********************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Form: SUB_TOP_OF_PAGE                                              **&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Description: Top of page&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;FORM sub_top_of_page.                                       "#EC CALLED&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Writes the standard header of the output report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Assign Program Name and Title&lt;/P&gt;&lt;P&gt;  v_repid = sy-repid.&lt;/P&gt;&lt;P&gt;  v_title = sy-title.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM report_header  USING v_repid  "Program Name&lt;/P&gt;&lt;P&gt;                               v_title. "Title&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.  "sub_top_of_page&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp;      Form  sub_ALV_DISPLAY&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;HR originaltext="---------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_ITAB_FCAT = field catalog&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_ITAB_data = Output table for display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;FORM sub_alv_display&lt;/P&gt;&lt;P&gt;                      TABLES  p_itab_data&lt;/P&gt;&lt;P&gt;                      USING   p_itab_fcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:  l_layout  TYPE  slis_layout_alv.  "ALV Layout Struc&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To optimize the column width so that all contents are displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_layout-colwidth_optimize = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To display the selection information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_layout-get_selinfos      =  'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_INTERFACE_CHECK              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE                = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     i_callback_program             = v_repid&lt;/P&gt;&lt;P&gt;   i_callback_pf_status_set       = 'SUB_PFSTATUS'&lt;/P&gt;&lt;P&gt;   i_callback_user_command        = 'SUB_USERCOMM'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME               =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   is_layout                      = l_layout&lt;/P&gt;&lt;P&gt;     it_fieldcat                    = p_itab_fcat&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EXCLUDING                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_SPECIAL_GROUPS              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     it_sort                        = itab_sort&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_FILTER                      =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_SEL_HIDE                    =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_DEFAULT                      = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   i_save                         = 'A'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_VARIANT                     = wa_variant&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    it_events                      = itab_events&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EVENT_EXIT                  =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_PRINT                       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_REPREP_ID                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_START_COLUMN          = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_START_LINE            = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_END_COLUMN            = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_END_LINE              = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  E_EXIT_CAUSED_BY_CALLER        =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  ES_EXIT_CAUSED_BY_USER         =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      t_outtab                       = p_itab_data&lt;/P&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     program_error                  = 1&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_ALV_DISPLAY&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp;      Form  sub_splglind_default&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      default value for&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;FORM sub_splglind_default .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  s_umskz-sign = 'E'.&lt;/P&gt;&lt;P&gt;  s_umskz-option = 'BT'.&lt;/P&gt;&lt;P&gt;  s_umskz-low = 'A'.&lt;/P&gt;&lt;P&gt;  s_umskz-high = 'W'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND s_umskz.&lt;/P&gt;&lt;P&gt;  CLEAR s_umskz.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_splglind_default&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp;      Form  sub_populate_fldcat&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Population of field catalog&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_ITAB_FCAT_INV&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_POS   - Position&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_fld   - Field name&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_text  - Field text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_len   - Length&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_dosum - do sum&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------" /&gt;&lt;P&gt;FORM sub_populate_fldcat  TABLES   p_itab_fcat_inv&lt;/P&gt;&lt;P&gt;                          USING    p_pos&lt;/P&gt;&lt;P&gt;                                   p_fld&lt;/P&gt;&lt;P&gt;                                   p_text&lt;/P&gt;&lt;P&gt;                                   p_len&lt;/P&gt;&lt;P&gt;                                   p_dosum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_fieldcat TYPE slis_fieldcat_alv. " alv field catalog&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  l_fieldcat-col_pos   = p_pos.&lt;/P&gt;&lt;P&gt;  l_fieldcat-fieldname = p_fld.&lt;/P&gt;&lt;P&gt;  l_fieldcat-seltext_m = p_text.&lt;/P&gt;&lt;P&gt;  l_fieldcat-outputlen = p_len.&lt;/P&gt;&lt;P&gt;  l_fieldcat-do_sum    = p_dosum.&lt;/P&gt;&lt;P&gt;  APPEND l_fieldcat TO p_itab_fcat_inv.&lt;/P&gt;&lt;P&gt;  CLEAR l_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sub_populate_fldcat&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps me...&lt;/P&gt;&lt;P&gt;Simran&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 09:31:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443331#M210672</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T09:31:56Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443332#M210673</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am waiting for your reply&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Simran&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 10:24:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443332#M210673</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T10:24:30Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443333#M210674</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. sorry for the late reply.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. I copy pasted ur code.&lt;/P&gt;&lt;P&gt;  But it contains some Z structures,&lt;/P&gt;&lt;P&gt;  which are not here in my system.&lt;/P&gt;&lt;P&gt;  (hence, i was not able to run the program)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. However,&lt;/P&gt;&lt;P&gt;   just looking to the flow,&lt;/P&gt;&lt;P&gt;   i saw that,&lt;/P&gt;&lt;P&gt;   on double-click call back form,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  there is no such logic to &lt;/P&gt;&lt;P&gt;  DETECT the TICKED rows,&lt;/P&gt;&lt;P&gt;  and display another alv&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(it simply calls the same alv,&lt;/P&gt;&lt;P&gt;further there is no another SELECT statement,&lt;/P&gt;&lt;P&gt;to fetch the further details)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. I think u will have to DEBUG the code,&lt;/P&gt;&lt;P&gt;   and rectify/enhance it yourself.&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;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jul 2006 10:32:18 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/1443333#M210674</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-07T10:32:18Z</dc:date>
    </item>
  </channel>
</rss>

