<?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 ALV: multiple line selection ito a program in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471317#M221493</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can anyone tell me how to achieve the following?&lt;/P&gt;&lt;P&gt;I have an alv grid that allows for multiple line item selection.  The user selects more that one line item.  There is a custom button to update the data selected.  This button will execute a background job that updates data using BDC. &lt;/P&gt;&lt;P&gt;Question: how can I pass multiple line data into a report program?  I would prefer not to loop and call the program for each line item, but would like to pass an entire set of data to be processed only once by the program.&lt;/P&gt;&lt;P&gt;Is this possible?&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Anna-Liza&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 28 Jul 2006 20:09:28 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-07-28T20:09:28Z</dc:date>
    <item>
      <title>ALV: multiple line selection ito a program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471317#M221493</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can anyone tell me how to achieve the following?&lt;/P&gt;&lt;P&gt;I have an alv grid that allows for multiple line item selection.  The user selects more that one line item.  There is a custom button to update the data selected.  This button will execute a background job that updates data using BDC. &lt;/P&gt;&lt;P&gt;Question: how can I pass multiple line data into a report program?  I would prefer not to loop and call the program for each line item, but would like to pass an entire set of data to be processed only once by the program.&lt;/P&gt;&lt;P&gt;Is this possible?&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Anna-Liza&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 28 Jul 2006 20:09:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471317#M221493</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-28T20:09:28Z</dc:date>
    </item>
    <item>
      <title>Re: ALV: multiple line selection ito a program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471318#M221494</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi &lt;/P&gt;&lt;P&gt;have a look at the program &amp;lt;b&amp;gt;BCALV_GRID_05&amp;lt;/b&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Abdul Hakim&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 28 Jul 2006 20:12:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471318#M221494</guid>
      <dc:creator>abdul_hakim</dc:creator>
      <dc:date>2006-07-28T20:12:20Z</dc:date>
    </item>
    <item>
      <title>Re: ALV: multiple line selection ito a program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471319#M221495</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;Pass 'A' to IS_LAYOUT parameter of the ALV grid and use &lt;/P&gt;&lt;P&gt;GET_SELECTED_ROWS method to get the selected rows into internal table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;or&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;make the first column as checkbox , then user will select the checkboxces.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check this link :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="1847109"&gt;&lt;/A&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;Appana&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 28 Jul 2006 20:28:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471319#M221495</guid>
      <dc:creator>Laxmana_Appana_</dc:creator>
      <dc:date>2006-07-28T20:28:52Z</dc:date>
    </item>
    <item>
      <title>Re: ALV: multiple line selection ito a program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471320#M221496</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Use export/import to/from database to pass multiple lines to the program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;or try using export/import to/from shared buffer.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 28 Jul 2006 22:06:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471320#M221496</guid>
      <dc:creator>former_member195698</dc:creator>
      <dc:date>2006-07-28T22:06:30Z</dc:date>
    </item>
    <item>
      <title>Re: ALV: multiple line selection ito a program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471321#M221497</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Anna. You can make a checkbox column in addition of all coulmns. User will select the rows by checking the checkbox. Then you can read out which rows user have selected. If problem presits, I can send you the code of exactly such requirement in which it runs BDC of PR Close.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 29 Jul 2006 05:01:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471321#M221497</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-29T05:01:15Z</dc:date>
    </item>
    <item>
      <title>Re: ALV: multiple line selection ito a program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471322#M221498</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Varun,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes, I would be interested in the code.  Can you please share it?  &lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Anna-Liza&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 31 Jul 2006 14:30:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471322#M221498</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-07-31T14:30:54Z</dc:date>
    </item>
    <item>
      <title>Re: ALV: multiple line selection ito a program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471323#M221499</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Anna&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    Here is the code attached with this post. If there some problem presists do reply me. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Code:-----&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report zprclose&lt;/P&gt;&lt;P&gt;no standard page heading&lt;/P&gt;&lt;P&gt;line-size 155&lt;/P&gt;&lt;P&gt;line-count 65(1).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;include : zco_alvdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables : eban.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : bdcdata like bdcdata    occurs 0 with header line.&lt;/P&gt;&lt;P&gt;data : messtab like bdcmsgcoll occurs 0 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : begin of itab occurs 0,&lt;/P&gt;&lt;P&gt;        banfn like eban-banfn,&lt;/P&gt;&lt;P&gt;        bnfpo like eban-bnfpo,&lt;/P&gt;&lt;P&gt;        bsart like eban-bsart,&lt;/P&gt;&lt;P&gt;        lgort like eban-lgort,&lt;/P&gt;&lt;P&gt;        werks like eban-werks,&lt;/P&gt;&lt;P&gt;        afnam like eban-afnam,&lt;/P&gt;&lt;P&gt;        frgkz like eban-frgkz,&lt;/P&gt;&lt;P&gt;        badat like eban-badat,&lt;/P&gt;&lt;P&gt;        frgdt like eban-frgdt,&lt;/P&gt;&lt;P&gt;        bednr like eban-bednr,&lt;/P&gt;&lt;P&gt;        matnr like eban-matnr,&lt;/P&gt;&lt;P&gt;        ekgrp like eban-ekgrp,&lt;/P&gt;&lt;P&gt;        statu like eban-statu,&lt;/P&gt;&lt;P&gt;        erdat like eban-erdat,&lt;/P&gt;&lt;P&gt;        ebakz like eban-ebakz,&lt;/P&gt;&lt;P&gt;        menge like eban-menge,&lt;/P&gt;&lt;P&gt;        preis like eban-preis,&lt;/P&gt;&lt;P&gt;        waers like eban-waers,&lt;/P&gt;&lt;P&gt;        peinh like eban-peinh,&lt;/P&gt;&lt;P&gt;        bsmng like eban-bsmng,&lt;/P&gt;&lt;P&gt;        del type i value 0,&lt;/P&gt;&lt;P&gt;        s(1) type c,&lt;/P&gt;&lt;P&gt;       end of itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: ba1(12) type c.&lt;/P&gt;&lt;P&gt;data: banf(20) type c.&lt;/P&gt;&lt;P&gt;data: banfn1 like eket-banfn.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : cnt type i,&lt;/P&gt;&lt;P&gt;       n(3) type n,&lt;/P&gt;&lt;P&gt;       cnt1 type i,&lt;/P&gt;&lt;P&gt;       n1(3) type n,&lt;/P&gt;&lt;P&gt;       s(1) type c,&lt;/P&gt;&lt;P&gt;       pn type i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : var1(40) type c,&lt;/P&gt;&lt;P&gt;       var2(40) type c,&lt;/P&gt;&lt;P&gt;       var3(40) type c,&lt;/P&gt;&lt;P&gt;       srlno type eban-bnfpo,&lt;/P&gt;&lt;P&gt;       day(2) type c,&lt;/P&gt;&lt;P&gt;       month(2) type c,&lt;/P&gt;&lt;P&gt;       year(4) type c,&lt;/P&gt;&lt;P&gt;       date1(10) type c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen begin of block ex with frame title text-005.&lt;/P&gt;&lt;P&gt;  select-options : banfn for eban-banfn.&lt;/P&gt;&lt;P&gt;  select-options : bnfpo for eban-bnfpo.&lt;/P&gt;&lt;P&gt;  select-options : bsart for eban-bsart.&lt;/P&gt;&lt;P&gt;  select-options : werks for eban-werks.&lt;/P&gt;&lt;P&gt;  select-options : afnam for eban-afnam.&lt;/P&gt;&lt;P&gt;  select-options : frgkz for eban-frgkz.&lt;/P&gt;&lt;P&gt;  select-options : badat for eban-badat.&lt;/P&gt;&lt;P&gt;  select-options : bednr for eban-bednr.&lt;/P&gt;&lt;P&gt;  select-options : matnr for eban-matnr.&lt;/P&gt;&lt;P&gt;  select-options : matkl for eban-matkl.&lt;/P&gt;&lt;P&gt;  select-options : ekgrp for eban-ekgrp.&lt;/P&gt;&lt;P&gt;  select-options : statu for eban-statu.&lt;/P&gt;&lt;P&gt;  select-options : erdat for eban-erdat.&lt;/P&gt;&lt;P&gt;  select-options : ebakz for eban-ebakz.&lt;/P&gt;&lt;P&gt;selection-screen end of block ex.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;    perform select_data.&lt;/P&gt;&lt;P&gt;    perform fill_fldcat.&lt;/P&gt;&lt;P&gt;    perform build_layout.&lt;/P&gt;&lt;P&gt;    perform display_output.&lt;/P&gt;&lt;P&gt;end-of-selection.&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  select_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;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form select_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select banfn bnfpo bsart werks afnam frgkz badat frgdt bednr matnr&lt;/P&gt;&lt;P&gt;       ekgrp statu erdat ebakz lgort menge preis waers peinh bsmng&lt;/P&gt;&lt;P&gt;       into (itab-banfn,itab-bnfpo,itab-bsart,itab-werks,&lt;/P&gt;&lt;P&gt;             itab-afnam,itab-frgkz,itab-badat,itab-frgdt,itab-bednr,&lt;/P&gt;&lt;P&gt;             itab-matnr,itab-ekgrp,itab-statu,itab-erdat,itab-ebakz,&lt;/P&gt;&lt;P&gt;             itab-lgort,itab-menge,itab-preis,itab-waers,itab-peinh,&lt;/P&gt;&lt;P&gt;             itab-bsmng)&lt;/P&gt;&lt;P&gt;       from eban&lt;/P&gt;&lt;P&gt;       where banfn in banfn&lt;/P&gt;&lt;P&gt;         and bnfpo in bnfpo&lt;/P&gt;&lt;P&gt;         and loekz ne 'X'&lt;/P&gt;&lt;P&gt;         and bsart in bsart&lt;/P&gt;&lt;P&gt;         and werks in werks&lt;/P&gt;&lt;P&gt;         and afnam in afnam&lt;/P&gt;&lt;P&gt;         and frgkz in frgkz&lt;/P&gt;&lt;P&gt;         and badat in badat&lt;/P&gt;&lt;P&gt;         and bednr in bednr&lt;/P&gt;&lt;P&gt;         and matnr in matnr&lt;/P&gt;&lt;P&gt;         and ekgrp in ekgrp&lt;/P&gt;&lt;P&gt;         and statu in statu&lt;/P&gt;&lt;P&gt;         and erdat in erdat&lt;/P&gt;&lt;P&gt;         and ebakz in ebakz.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  append itab.&lt;/P&gt;&lt;P&gt;endselect.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at itab.&lt;/P&gt;&lt;P&gt;  if itab-menge ge itab-bsmng.&lt;/P&gt;&lt;P&gt;    itab-del = 1.&lt;/P&gt;&lt;P&gt;    modify itab.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;delete itab where del ne 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sort itab by banfn bnfpo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " select_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;P&gt;*&amp;amp;      Form  fill_fldcat&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;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form fill_fldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  constants : key value 'X',&lt;/P&gt;&lt;P&gt;              no_key value space,&lt;/P&gt;&lt;P&gt;              check value 'X',&lt;/P&gt;&lt;P&gt;              no_check value space ,&lt;/P&gt;&lt;P&gt;              hot value 'X',&lt;/P&gt;&lt;P&gt;              no_hot value space,&lt;/P&gt;&lt;P&gt;              input value 'X',&lt;/P&gt;&lt;P&gt;              no_input value space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   perform append_fldcat using 'S' 'ITAB' ' ' no_key&lt;/P&gt;&lt;P&gt;  'CHK' check no_hot input 0 changing gt_fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform append_fldcat using 'WERKS' 'ITAB' 'EBAN' no_key&lt;/P&gt;&lt;P&gt; 'PLANT' no_check no_hot no_input 0 changing gt_fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform append_fldcat using 'BANFN' 'ITAB' 'EBAN' key&lt;/P&gt;&lt;P&gt; 'PR-NO' no_check no_hot no_input 0 changing gt_fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform append_fldcat using 'BNFPO' 'ITAB' 'EBAN' key&lt;/P&gt;&lt;P&gt; 'PR-NO' no_check no_hot no_input 0 changing gt_fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform append_fldcat using 'BADAT' 'ITAB' 'EBAN' no_key&lt;/P&gt;&lt;P&gt; 'PR-DAT' no_check no_hot no_input 0 changing gt_fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform append_fldcat using 'ERDAT' 'ITAB' 'EBAN' no_key&lt;/P&gt;&lt;P&gt; 'RELEASEDT' no_check no_hot no_input 0 changing gt_fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform append_fldcat using 'MATNR' 'ITAB' 'EBAN' no_key&lt;/P&gt;&lt;P&gt; 'ITEMCODE' no_check no_hot no_input 0 changing gt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform append_fldcat using 'BEDNR' 'ITAB' 'EKPO' no_key&lt;/P&gt;&lt;P&gt; 'TRACKING NO.' no_check no_hot no_input 0 changing gt_fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform append_fldcat using 'AFNAM' 'ITAB' 'EKPO' no_key&lt;/P&gt;&lt;P&gt; 'REQUISITIONER' no_check no_hot no_input 0 changing gt_fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform append_fldcat using 'EBAKZ' 'ITAB' 'EKPO' no_key&lt;/P&gt;&lt;P&gt; 'CLOSE STATUS' no_check no_hot no_input 0 changing gt_fieldcat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " fill_fldcat&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  build_layout&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;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form build_layout.&lt;/P&gt;&lt;P&gt;  gs_layout-f2code            = p_f2code.&lt;/P&gt;&lt;P&gt;  gs_layout-zebra             = 'X'.&lt;/P&gt;&lt;P&gt;  gs_layout-colwidth_optimize = 'X'.&lt;/P&gt;&lt;P&gt;  gs_layout-totals_text       = text-900.&lt;/P&gt;&lt;P&gt;  gs_layout-subtotals_text    = text-901.&lt;/P&gt;&lt;P&gt;  gs_layout-key_hotspot       = 'X'.&lt;/P&gt;&lt;P&gt;  gs_layout-detail_popup      = 'X'.&lt;/P&gt;&lt;P&gt;  gs_layout-no_vline          = ' '.&lt;/P&gt;&lt;P&gt;endform.                    " build_layout&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  display_output&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;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;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form display_output.&lt;/P&gt;&lt;P&gt; g_repid = sy-repid.&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;P&gt;            i_callback_program       = g_repid&lt;/P&gt;&lt;P&gt;            i_callback_pf_status_set = 'SET_PF_STATUS'&lt;/P&gt;&lt;P&gt;            i_callback_user_command  = 'LINE_SELECTION'&lt;/P&gt;&lt;P&gt;            is_layout                = gs_layout&lt;/P&gt;&lt;P&gt;            it_fieldcat              = gt_fieldcat[]&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;endform.                    " display_output&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp;      Form  append_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;      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_0276   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0277   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0278   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_KEY  text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0280   text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_NO_CHECK  text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_NO_HOT  text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_NO_INPUT  text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_3      text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     &amp;lt;--P_GT_FIELDCAT  text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------" /&gt;&lt;P&gt;form append_fldcat using par_fldname par_tabname&lt;/P&gt;&lt;P&gt;par_reftabname par_key&lt;/P&gt;&lt;P&gt;         par_seltext par_checkbox par_hotspot par_input&lt;/P&gt;&lt;P&gt;par_outputlen&lt;/P&gt;&lt;P&gt;            changing pit_fldcat type slis_t_fieldcat_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-tabname     = par_tabname.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname   = par_fldname  .&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname = par_reftabname.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key         = par_key .&lt;/P&gt;&lt;P&gt;  ls_fieldcat-seltext_m   = par_seltext.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-checkbox    = par_checkbox.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-hotspot     = par_hotspot .&lt;/P&gt;&lt;P&gt;  ls_fieldcat-input       = par_input.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-outputlen   = par_outputlen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  append ls_fieldcat to pit_fldcat.&lt;/P&gt;&lt;P&gt;endform.                    " append_fldcat&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;      FORM line_selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------" /&gt;&lt;P&gt;form line_selection using r_ucomm like sy-ucomm&lt;/P&gt;&lt;P&gt;rs_selfield type slis_selfield.&lt;/P&gt;&lt;P&gt;  case r_ucomm.&lt;/P&gt;&lt;P&gt;    when '&amp;amp;REL'.&lt;/P&gt;&lt;P&gt;      clear r_ucomm.&lt;/P&gt;&lt;P&gt;      sort itab by banfn bnfpo.&lt;/P&gt;&lt;P&gt;      perform list_cl.&lt;/P&gt;&lt;P&gt;    when '&amp;amp;SEL'.&lt;/P&gt;&lt;P&gt;      clear r_ucomm.&lt;/P&gt;&lt;P&gt;      perform  list_sel.&lt;/P&gt;&lt;P&gt;    when '&amp;amp;DSC'.&lt;/P&gt;&lt;P&gt;      clear r_ucomm.&lt;/P&gt;&lt;P&gt;      perform list_des.&lt;/P&gt;&lt;P&gt;    when '&amp;amp;OTH'.&lt;/P&gt;&lt;P&gt;      perform x1.&lt;/P&gt;&lt;P&gt;      clear r_ucomm.&lt;/P&gt;&lt;P&gt;  endcase.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM set_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 set_pf_status using rt_extab type slis_t_extab .&lt;/P&gt;&lt;P&gt;  set pf-status 'CLOSE'.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form x1.&lt;/P&gt;&lt;P&gt;  get cursor field ba1.&lt;/P&gt;&lt;P&gt;  get cursor field banf.&lt;/P&gt;&lt;P&gt;  if banf = 'ITAB-BANFN'.&lt;/P&gt;&lt;P&gt;    get cursor field itab-banfn value banfn1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    call function 'MMPUR_REQUISITION_DISPLAY'&lt;/P&gt;&lt;P&gt;    exporting&lt;/P&gt;&lt;P&gt;      im_banfn              = banfn1.&lt;/P&gt;&lt;P&gt;    if sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;       message id sy-msgid type sy-msgty number sy-msgno&lt;/P&gt;&lt;P&gt;       with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form list_sel.&lt;/P&gt;&lt;P&gt;  loop at itab.&lt;/P&gt;&lt;P&gt;    itab-s = 'X'.&lt;/P&gt;&lt;P&gt;    modify itab.&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form list_des.&lt;/P&gt;&lt;P&gt;  loop at itab.&lt;/P&gt;&lt;P&gt;    itab-s = space.&lt;/P&gt;&lt;P&gt;    modify itab.&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form list_cl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*****BDC for closeing the PR.&lt;/P&gt;&lt;P&gt;loop at itab where s = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;srlno = itab-bnfpo / 10.&lt;/P&gt;&lt;P&gt;var3 = srlno.&lt;/P&gt;&lt;P&gt;concatenate '0' var3 into var3.&lt;/P&gt;&lt;P&gt;concatenate 'EBAN-BNFPO' '(' var3 ')' into var1.&lt;/P&gt;&lt;P&gt;concatenate 'RM06B-TCSELFLAG' '(' var3 ')' into var2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;day =  itab-frgdt+6(2).&lt;/P&gt;&lt;P&gt;month = itab-frgdt+4(2).&lt;/P&gt;&lt;P&gt;year = itab-frgdt+0(4).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;concatenate day '.' month '.' year into date1.&lt;/P&gt;&lt;P&gt;******new addition for large number of pr item&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMM06B' '0105'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'BDC_CURSOR' 'EBAN-BANFN'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'BDC_OKCODE' '=AB'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'EBAN-BANFN' itab-banfn.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMM06B' '0106'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'BDC_CURSOR' 'RM06B-BNFPO'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'RM06B-BNFPO' itab-bnfpo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMM06B' '0106'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'BDC_CURSOR' 'EBAN-BNFPO(01)'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'BDC_OKCODE' '=DETA'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'RM06B-BNFPO' itab-bnfpo.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'RM06B-TCSELFLAG(01)' 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro using 'SAPMM06B' '0102'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'BDC_CURSOR' 'EBAN-EBAKZ'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'BDC_OKCODE' '=BU'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; perform bdc_field using 'EBAN-LGORT' itab-lgort.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; perform bdc_field using 'EBAN-MENGE' itab-menge.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; perform bdc_field using 'RM06B-EEIND' '30.11.2004'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; perform bdc_field using 'RM06B-LPEIN' 'D'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; perform bdc_field using 'EBAN-AFNAM' itab-afnam.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; perform bdc_field using 'EBAN-BEDNR' itab-bednr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; perform bdc_field using 'EBAN-FRGDT' '30.11.2004'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform bdc_field using 'EBAN-EBAKZ' 'X'.&lt;/P&gt;&lt;P&gt;  perform bdc_field using 'EBAN-REPOS' 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;******end of addition&lt;/P&gt;&lt;P&gt;  call transaction 'ME52' using bdcdata mode ''&lt;/P&gt;&lt;P&gt;        messages into messtab.&lt;/P&gt;&lt;P&gt;        refresh bdcdata.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; refresh itab.&lt;/P&gt;&lt;P&gt; clear itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; perform select_data.&lt;/P&gt;&lt;P&gt; perform fill_fldcat.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Start new screen                                              *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form bdc_dynpro using program dynpro.&lt;/P&gt;&lt;P&gt;  clear bdcdata.&lt;/P&gt;&lt;P&gt;  bdcdata-program  = program.&lt;/P&gt;&lt;P&gt;  bdcdata-dynpro   = dynpro.&lt;/P&gt;&lt;P&gt;  bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  append bdcdata.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Insert field                                                  *&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 bdc_field using fnam fval.&lt;/P&gt;&lt;P&gt;    clear bdcdata.&lt;/P&gt;&lt;P&gt;    bdcdata-fnam = fnam.&lt;/P&gt;&lt;P&gt;    bdcdata-fval = fval.&lt;/P&gt;&lt;P&gt;    append bdcdata.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 01 Aug 2006 04:32:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-multiple-line-selection-ito-a-program/m-p/1471323#M221499</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-08-01T04:32:39Z</dc:date>
    </item>
  </channel>
</rss>

