Me21n change line item dropdown list value

hi experts,
i have a requirement to automatically remove the aulty po line item when user click on CHECK or SAVE button, i done this by removing the record from ETT[] and POT[] at ENHANCEMENT-POINT mm06ef0p_pruefen_01 SPOTS es_mm06ef0p_pruefen INCLUDE BOUND.
it is working fine except one scenario which is, if the faulty line item is 00020, and the line item dropdown list is selected line item 20, after i removed the record from POT[], it hits abap runtime error. when i check at debugger, it is caused by system will look for line item 00020 ( follow dropdown list value ) but the record is removed, so come to error... it is working fine if the dropdown list is selected line item 10.
so i am looking for a way to change the dropdown list value.
or you all have some other suggestion?
please help... i need it urgently coz i have been solving the problem for 2 weeks....
thanks a lot

Hi,
generally it's not a good idea to delete item without using standard method. You can see one example why it is usually complicated. Maybe I have a workaround for you. You can try to use BADI ME_PROCESS_PO_CUST. There is a method CHECK where you get reference to PO header. You can easily get references to your items by calling method GET_ITEMS. So you will perform your check for each item and for wrong items you will call method INVALIDATE. This item will be marked as invalid and it will not be posted. Here I do not know how it will be displayed to user. Maybe the user will have to delete this item manually.
Cheers

Similar Messages

  • Printing of changed line item in scheduling agreement  smart form.

    Hi experts,
    I am facing problem in printing of changed line item in schedule agreement.
    can any body tell me how to find the line item has been changed through programming?what is the procedure to fetch the data for new line item.its
    very urgent for me.
    Please help me in this regard.
    Priti Shrivastava

    Hi
    with the help of  T180-TRTYP field you know if that doc has been changed or created.
    If it is not equal to H it is changed. H means created.
    pass the TCODE of Sched Agreement and check this field.
    You can use the CDHDR and CDPOS table s to get the changed values of new item.
    Reward points if useful
    Regards
    Anji
    Message was edited by:
            Anji Reddy Vangala

  • Vendor Display/Change Line Items

    Vendor with Debit balance
    Dear Friends:
    In FBL1N - Display/Change Line Items, How to indentify vendors with debit balance and How to identify vendors who has to be paid and why are amounts showing with - sign?
    Please explain.
    Thanks&Regards
    MSReddy

    Hi,
    You can identify the debit balance by checking the amount with positive value. Or you can also select "debit/credit" indicator in the screen layout. when the layout come out, you'll see "H" representing credit and "S" representing debit.
    Regarding second question, normally the line item that still need to be paid is identified as "open item" (red color", and the amount that has been paid as "cleared item" (green color).
    Even the amount already paid, it will still sign negative, but you can see the "clearing document" number as the payment or clearing document.
    Note that, the assumption on the above is that the payment of outstanding vendor is using clearing procedure.
    regards,

  • PO Line Item wise gross value for combination of WBS and Material Group

    Hello,
    Our requirement is to get report for PO Line Item wise gross value for combination of WBS and Material Group. Standard report ME2J gives net price but not gross value for Material Line items. Please let me know if any standard report( or ME2J) will suffice this requirement.
    Regards,
    Milind Dumbre

    Dear Milind
    No standard report available to get the PO Line Item wise gross value for combination of WBS and Material Group. Please go for development by taking reference ME2J.
    Warm regards
    Ramakrishna

  • BAPI_PO_CHANGE Changing line Item

    Hi All,
    My requirement is like this I need to changed line item of a purchase order using BAPI_PO_Change is it required to pass header data other than po Number?I have to change only the Batch Number(POITEM-BATCH) can some body throw some idea on this?
    Thanks&Regards
    Mahesh

    Hi,
       PO number may solve your purpose. Just try filling
       PO number in your BAPI header structure and
       relevent field for your batch number.
    Regards
    Amole

  • Hi in VL06O, the item overview showing no line item in 'LIST OUTBOUND DELIV

    Hi,
    Hi in VL06O, the "item overview" showing no line item in 'LIST OUTBOUND DELIVary " tab.
    But for that particular Delivery doc in VL03, the details showing three line item.
    So could you please provide me with prooer suggestion
    Best Regards,
    BDP

    Hi
    In VL06O there is lot of parameter to see delivery due list.
    Check the delivery date of the order and put the same date in between of VL06O report.
    Second give only ur sales organisation and inbetween delivery date to check. and execute
    Regards
    Shambhu Sarkar

  • Max length of Dropdown list value

    Hello,
    I wanted to know the maximum length that a dropdown list value can have in an offline Adobe form. Any help would be appreciated.
    Thanks,
    Rohini.

    Hi,
    Its always better to keep the no: of values in the drop down to hundreds.
    If you are running to 1000's, go for some other options like asking the user to enter the value and then do the check for that specific value. Also, usability of the drop down will be worse, if it has more values (just think of you selecting a value from a list of 10000 values - sorted or not).
    It may also result in the scroll bar growing so thin that it disappears, do try it out yourselves by increasing the values to about 130000 [:)].
    Thanks and Best Regards,
    Anto.

  • Sales order with line items having multiple values in multiple currency

    Please suggest solution for creating sales order having line items with multiple values in multiple currencies.
    e.g. Line Item A Qty/1 No,  value 100INR100$100EUR. Customer wants all three values to display at sales order line item level and create billing in 3 currencies.

    Hi,
    As far as my understanding it may be possible round the solution,
    For 1 company code we can able to maintain 3 currancies,
    1 currancy is hard currance & other two are dual currancies.
    Create sales order with 3 line items having 3 diffrant currancies
    Spilt invoice on the basis of currancy
    Last pass to this invoices to accounting.
    Whole process is
    Sales order >>> Delivery >>> Invoice 1, Invoice 2, Invoice 3(Split invoice on basis of Currancy).
    Consult with FI Team they will tell you about dual currancy & hard currancy
    Kapil

  • Change image when form dropdown list value is selected

    I really thought this would be simpler but I just can't get it working.
    I have a submit from from paypal with a dropdown list. The list allows you to select color. I want to change an image on the page to display the appropriate color when the color is selected from the drop down list. So a black image shows up when black is selected, a red when red - etc...
    I would be very grateful if someone can share some succinct, browser compatible code. Thank you so much for any help you can provide.
    Bill

    Thanks so much.  I used your info from above and am in the process of creating a product configurator for our products.  Do you see any problems/issues etc or ways to make this script better?  I don't have most of the images there yet, but if you choose big boy chair and then choose navy/powder/black fabric and most accent colors you should see it working (in FireFox anyway).  Not sure why it isn't working in IE.  Any ideas?
    Here's the link:
    http://logochairs.com/j25cms/index.php/customform/test-form
    And here's my code:
    <script type="text/javascript">
    <!--
    function logo_prodImgBySel(objId,theValue) {
    var cobaseimages=["/j25cms/images/customimages/blank.jpg","/j25cms/images/customimages/11/base.jpg", "/j25cms/images/customimages/12/base.jpg", "/j25cms/images/customimages/13/base.jpg", "/j25cms/images/customimages/15/base.jpg", "/j25cms/images/customimages/20/base.jpg", "/j25cms/images/customimages/23/base.jpg", "/j25cms/images/customimages/24/base.jpg", "/j25cms/images/customimages/25/base.jpg", "/j25cms/images/customimages/27/base.jpg", "/j25cms/images/customimages/32/base.jpg", "/j25cms/images/customimages/35/base.jpg", "/j25cms/images/customimages/39/base.jpg", "/j25cms/images/customimages/41/base.jpg", "/j25cms/images/customimages/42/base.jpg", "/j25cms/images/customimages/48/base.jpg", "/j25cms/images/customimages/50/base.jpg", "/j25cms/images/customimages/51/base.jpg", "/j25cms/images/customimages/52/base.jpg", "/j25cms/images/customimages/54/base.jpg", "/j25cms/images/customimages/56/base.jpg", "/j25cms/images/customimages/57/base.jpg", "/j25cms/images/customimages/58/base.jpg", "/j25cms/images/customimages/60/base.jpg", "/j25cms/images/customimages/62/base.jpg", "/j25cms/images/customimages/64/base.jpg", "/j25cms/images/customimages/65/base.jpg", "/j25cms/images/customimages/68/base.jpg", "/j25cms/images/customimages/69/base.jpg", "/j25cms/images/customimages/71/base.jpg", "/j25cms/images/customimages/72/base.jpg", "/j25cms/images/customimages/74/base.jpg", "/j25cms/images/customimages/77/base.jpg", "/j25cms/images/customimages/78/base.jpg", "/j25cms/images/customimages/79/base.jpg", "/j25cms/images/customimages/80/base.jpg", "/j25cms/images/customimages/82/base.jpg", "/j25cms/images/customimages/83/base.jpg", "/j25cms/images/customimages/84/base.jpg", "/j25cms/images/customimages/90/base.jpg", "/j25cms/images/customimages/94/base.jpg"];
        var d=document;
        theValue=cobaseimages[theValue];
        if (!theValue || !d.getElementById ) return;
        var obj = d.getElementById(objId);
        if (obj) obj.src=theValue;  
    <!--
    function logo_prodImgPrim(objId,theValue) {
      var coimageprimary1='/j25cms/images/customimages/';
    var coimageprimary25= document.getElementById('ff_elem368');
    var coimageprimary2= coimageprimary25.options[coimageprimary25.selectedIndex].value; 
    var coimageprimary3='/primary/';
    var ttt='Powder.png';
    var mypath=(coimageprimary1 + coimageprimary2 + coimageprimary3);
      var coPrimaryimages=['/j25cms/images/customimages/blank.png',(mypath + 'White.png'),
    (mypath + 'Black.png'),
    (mypath + 'Lemon.png'),
    (mypath + 'Yellow.png'),
    (mypath + 'Gold.png'),
    (mypath + 'Tangerine.png'),
    (mypath + 'Rust.png'),
    (mypath + 'Orange.png'),
    (mypath + 'Carrot.png'),
    (mypath + 'Red.png'),
    (mypath + 'Cardinal.png'),
    (mypath + 'Garnet.png'),
    (mypath + 'Maroon.png'),
    (mypath + 'Purple.png'),
    (mypath + 'Powder.png'),
    (mypath + 'Navy.png'),
    (mypath + 'Royal.png'),
    (mypath + 'Hunter.png'),
    (mypath + 'Gray.png'),
    (mypath + 'Charcoal.png'),
    (mypath + 'Khaki.png'),
    (mypath + 'Vegas.png'),
    (mypath + 'Kelly.png'),
    (mypath + 'Pink.png'),
        var d=document;
        theValue=coPrimaryimages[theValue];
        if (!theValue || !d.getElementById ) return;
        var obj = d.getElementById(objId);
        if (obj) obj.src=theValue;  
      <!--
    function logo_prodImgSec(objId,theValue) {
      var coimagesecondary1='/j25cms/images/customimages/';
    var coimagesecondary25= document.getElementById('ff_elem368');
    var coimagesecondary2= coimagesecondary25.options[coimagesecondary25.selectedIndex].value; 
    var coimagesecondary3='/accent/';
    var ttt='Powder.png';
    var mypathz=(coimagesecondary1 + coimagesecondary2 + coimagesecondary3);
      var coSecondaryimages=['/j25cms/images/customimages/blank.png',(mypathz + 'White.png'),
    (mypathz + 'Black.png'),
    (mypathz + 'Lemon.png'),
    (mypathz + 'Yellow.png'),
    (mypathz + 'Gold.png'),
    (mypathz + 'Tangerine.png'),
    (mypathz + 'Rust.png'),
    (mypathz + 'Orange.png'),
    (mypathz + 'Carrot.png'),
    (mypathz + 'Red.png'),
    (mypathz + 'Cardinal.png'),
    (mypathz + 'Garnet.png'),
    (mypathz + 'Maroon.png'),
    (mypathz + 'Purple.png'),
    (mypathz + 'Powder.png'),
    (mypathz + 'Navy.png'),
    (mypathz + 'Royal.png'),
    (mypathz + 'Hunter.png'),
    (mypathz + 'Gray.png'),
    (mypathz + 'Charcoal.png'),
    (mypathz + 'Khaki.png'),
    (mypathz + 'Vegas.png'),
    (mypathz + 'Kelly.png'),
    (mypathz + 'Pink.png'),
        var d=document;
        theValue=coSecondaryimages[theValue];
        if (!theValue || !d.getElementById ) return;
        var obj = d.getElementById(objId);
        if (obj) obj.src=theValue;  
    function clear_OnChange()
    var combo = document.getElementById('ff_elemPriColor');
    combo.selectedIndex = "0";
    var combo2 = document.getElementById('ff_elemSecColor');
    combo2.selectedIndex = "0";
    </script>
    <div id="product1image_a" style="position: relative; float: right; top: -20px; right: 0px; width: 250px; height: 250px; border: 2px solid darkgray; box-shadow: 5px 5px 5px rgb(136, 136, 136);">
      <img width="250" height="250" style="position:absolute;bottom:0px;right:0px;" id="theImg" src="images/customimages/blank.jpg" alt="" />
      <img id="thePrimary" style="position:absolute; bottom:0px; right:0px; width:250px;" src="images/customimages/blank.png">
      <img id="theAccent" style="position:absolute; top:0px; left:0px; width:250px;" src="images/customimages/blank.png">
    </div>
    <span id="bfElemWrap368" class="bfElemWrap bfLabelLeft">
    <label id="bfLabel368" for="ff_elem358">Product Line</label>
    <select id="ff_elem368" name="ff_nm_prod1[]" onchange="logo_prodImgBySel('theImg',this.selectedIndex);clear_OnChange();logo_prodImgPrim('thePrim ary',this.selectedIndex);logo_prodImgSec('theAccent',this.selectedIndex);" class="ff_elem">
    <option value="" selected="selected"></option>
    <option value="11">Big Boy Chair</option>
    <option value="12">Deluxe Chair</option>
    <option value="13">Canvas Chair</option>
    <option value="15">Sphere Chair</option>
    <option value="20">Toddler Chair</option>
    <option value="23">Classic Fleece</option>
    <option value="24">Sherpa Throw</option>
    <option value="25">Fleece Throw</option>
    <option value="27">UltraSoft Blanket</option>
    <option value="32">Tailgate Table</option>
    <option value="35">Trashcan Cooler</option>
    <option value="39">Economy Tent</option>
    <option value="41">Color Tent</option>
    <option value="42">Checkerboard Tent</option>
    <option value="48">Side Panel</option>
    <option value="50">12 Pack Cooler</option>
    <option value="51">Luggage Set</option>
    <option value="52">Rolling Duffel</option>
    <option value="54">Sport Duffel</option>
    <option value="56">Lunch Pail</option>
    <option value="57">Rolling Cooler</option>
    <option value="58">Party Bucket</option>
    <option value="60">Picnic Cooler</option>
    <option value="62">Backpack</option>
    <option value="64">String Pack</option>
    <option value="65">Reversible Tote</option>
    <option value="68">Seat Blanket Combo</option>
    <option value="69">Stadium Seat with Arms</option>
    <option value="71">Stadium Cushion</option>
    <option value="72">Gym Bag</option>
    <option value="74">Sweatshirt Blanket</option>
    <option value="77">Round Coozie</option>
    <option value="78">Flat Coozie</option>
    <option value="79">Bottle Coozie</option>
    <option value="80">Stadium Seat</option>
    <option value="82">8-Can Cooler Tote</option>
    <option value="83">16-Can Cooler Tote</option>
    <option value="84">30-Can Cooler Tote</option>
    <option value="90">Camping Stool</option>
    <option value="94">Hardback Seat</option>
      </span>
    </select>
    <span id="bfElemWrapPriColor" class="bfElemWrap bfLabelLeft">
    <label id="bfLabelPriColor" for="ff_elemPriColor">Primary Fabric</label>
    <select id="ff_elemPriColor" name="ff_nm_prodcolor[]" onchange="logo_prodImgPrim('thePrimary',this.selectedIndex)" class="ff_elem">
    <option value="" selected="selected"></option>
    <option value="White">White</option>
    <option value="Black">Black</option>
    <option value="Lemon">Lemon</option>
    <option value="Yellow">Yellow</option>
    <option value="Gold">Gold</option>
    <option value="Tangerine">Tangerine</option>
    <option value="Rust">Rust</option>
    <option value="Orange">Orange</option>
    <option value="Carrot">Carrot</option>
    <option value="Red">Red</option>
    <option value="Cardinal">Cardinal</option>
    <option value="Garnet">Garnet</option>
    <option value="Maroon">Maroon</option>
    <option value="Purple">Purple</option>
    <option value="Powder">Powder</option>
    <option value="Navy">Navy</option>
    <option value="Royal">Royal</option>
    <option value="Hunter">Hunter</option>
    <option value="Gray">Gray</option>
    <option value="Charcoal">Charcoal</option>
    <option value="Khaki">Khaki</option>
    <option value="Vegas">Vegas</option>
    <option value="Kelly">Kelly</option>
    <option value=

  • ME21n Multiple line items

    Hi all,
    I wana pass multiple line items thru bdc me21n....can any1 please help me .if u guys have some code can mail me at [email protected] will be rewarded.
    my code below is not working for passing multiple items.
    report y1_po_test
           no standard page heading line-size 255.
    tables: mara,
            lfa1,
            eina,
            eine,
            eban,
            zdrgsah, zdrgsap,
            zdrgsup,
            t100,
            ekko,
            a004, zprice_grpsal, mvke.
    *Internal Table to get the input Data
    data: begin of i_input occurs 0,
            matnr like ekpo-matnr,
            asqty like ekpo-menge,
            ebeln like ekpo-ebeln,
            posnr(5),
           posnr like zdrgsap-posnr,
            invno like zdrgsap-invno,
            invdt like zdrgsah-invdt,
            netpr like zdrgsap-netpr,
            cntno like zdrgsap-cntno,
            shcnm like zdrgsah-shcnm,
            apcno like zdrgsap-apcno,
            spcno like zdrgsap-spcno,
            werks like ekpo-werks,
            lgort like ekpo-lgort,
            matkl like ekpo-matkl,
            pack(10),
            mvgr2 like mvke-mvgr2,
           dpric type p decimals 6 ,
           gpric type p decimals 6,
            end of i_input.
    data: begin of i_inputxt occurs 0,
            matnr(18) ,
            asqty(13) ,
            ebeln(10) ,
            posnr(6)  ,
            invno(10) ,
            invdt(8)  ,
            netpr(11) ,
            cntno(11) ,
            shcnm(10) ,
            werks(4) ,
            lgort(4) ,
            matkl(9) ,
            pack(10),
            end of i_inputxt.
    data: begin of i_error occurs 0,
            prnum like eban-banfn,
            pritm like eban-bnfpo,
            inmat like mara-matnr,
            prmat like mara-matnr,
            asqty like zdrgsap-asqty,
            prqty like eban-menge,
            remak(100),
           remark(255) type c,
          end of i_error.
    data : begin of i_error1 occurs 0,
            prnum like eban-banfn,
            pritm like eban-bnfpo,
            asqty like zdrgsap-asqty,
            prqty like eban-menge,
            remak(100),
            end of i_error1.
    data : begin of i_zsap occurs 0,
           ebeln like zdrgsap-ebeln,
           posnr(5),
           menge like zdrgsap-menge,
           asqty like zdrgsap-asqty,
           end of i_zsap.
    data : v_ebeln like eket-ebeln.
    data : begin of i_a004 occurs 0,
           matnr like a004-matnr,
           knumh like a004-knumh,
           kbetr like konp-kbetr,
           end of i_a004,
           i_a0041 like i_a004 occurs 0 with header line.
    data : begin of i_konp occurs 0,
           knumh like konp-knumh,
           kbetr like konp-kbetr,
          konwa like konp-konwa,
           end of i_konp.
    data : begin of i_konp1 occurs 0,
           knumh like konp-knumh,
           kbetr like konp-kbetr,
           konwa like konp-konwa,
           end of i_konp1.
    data : begin of i_netpr occurs 0,
           ebeln like eket-ebeln,
           ebelp like eket-ebelp,
           matnr like ekpo-matnr,
           menge like ekpo-menge,
           netpr like ekpo-netpr,
          kbetr like konp-kbetr,
           end of i_netpr.
    data : begin of i_grpsal occurs 0,
           pcode like zprice_grpsal-pcode,
           fact like zprice_grpsal-fact,
           wfact like zprice_grpsal-wfact,
           end of i_grpsal.
    data : begin of i_domsal occurs 0,
           pcode like zprice_grpsal-pcode,
           fact like zprice_grpsal-fact,
           wfact like zprice_grpsal-wfact,
           end of i_domsal.
    data : begin of i_zsap1 occurs 0,
           ebeln like zdrgsap-ebeln,
           posnr(5),
           asqty like zdrgsap-asqty,
           end of i_zsap1.
    data: begin of bdcdata occurs 0.
            include structure bdcdata.       " Batch input: New table field
    data: end of bdcdata.
          messages of call transaction
    data:   messtab like bdcmsgcoll occurs 0 with header line.
    data: i_mara type mara occurs 0 with header line,
          i_eina like eina occurs 0 with header line,
          i_eine like eine occurs 0 with header line.
    data : begin of i_inferr occurs 0,
           matnr like eina-matnr,
           infnr like eina-infnr,
           werks like eine-werks,
           end of i_inferr.
    data : begin of i_inferrc occurs 0,
           matnr like eina-matnr,
           end of i_inferrc.
    *Data declaration.
    data: v_file     type string,           " Variable for uploading file
          v_item(5)  type c,             " Line item number
          v_itno(2)  type n,
          p_wkurs like zdrgkurs-wkurs,
          v_matnr(20)    type c,
          v_menge(20)    type c,
          v_banfn(20)    type c,
          v_bnfpo(20)    type c,
          v_bednr(20)    type c,
          v_werks(20),
          p_lifnr(10) ,
          v_flag,
          p_lifnrtxt(10),
          p_wkurstxt(9),
          p_bsartxt(4),
          v_posnr(5), n type i,
          v_quant(13),
          v_asqty(13),
          v_prqty(13),
          v_apcno(6),
          v_spcno(4),
          v_itm(11),
          v_cnt type i,
          v_cntno(4),
          v_pack(10),
          v_order(15),
          v_lifnr(10),
          v_invdt like sy-datum,
          v_waers like ekko-waers,
          v_podat like ekko-bedat,
          v_docdt1 like sy-datum,
          v_docdt(10),
          v_fnam(132).
    data : begin of i_test occurs 0,
           bnfpo like eban-bnfpo,
           matnr like eban-matnr,
           menge like eban-menge,
           bsmng like eban-bsmng,
           end of i_test.
    data : begin of i_mvke occurs 0,
           matnr like mvke-matnr,
           mvgr2 like mvke-mvgr2,
           end of i_mvke.
    data : begin of i_invno,
           ebeln like ekko-ebeln,
           angnr like ekko-angnr,
           end of i_invno.
    data : i_final like zinvdiff occurs 0 with header line.
    Constants
    constants : c_pd01 like eine-werks value 'PD01'.
    *Selection Screen Declarations
    selection-screen begin of block b1 with frame title text-010.
    parameters: p_invno like zdrgsah-invno obligatory,
                p_bsart like ekko-bsart obligatory.
    selection-screen end of block b1.
    start-of-selection.
    To Upload the data into Internal table.
      perform f_upload_data.
    To Validate the input data.
      perform f_check_data.
    if i_error[] is not initial or i_error1[] is not initial.
    To display the error message
       perform f_display_errors.
    else.
    To create PO
      perform f_process_session.
    endif.
      perform f_check_calc_price.
      perform f_display_data.
    perform f_update_zinvdiff.
    *&      Form  f_get_filename
          text
    form f_get_filename.
    endform.                                 " F_get_filename
    *&      Form  f_upload_data
    form f_upload_data .
      select matwa as matnr asqty ebeln posnr b~invno invdt netpr cntno
        shcnm apcno spcno into table i_input
             from zdrgsah as a join zdrgsap as b on
             a~invno = b~invno
             where b~invno eq p_invno.
      select ebeln
             posnr
             menge
             asqty
             from zdrgsap into table i_zsap
             where invno = p_invno.
      loop at i_zsap.
        concatenate i_zsap-posnr(4) '0' into v_posnr.
        i_zsap1-ebeln = i_zsap-ebeln.
        i_zsap1-posnr = v_posnr.
        i_zsap1-asqty = i_zsap-asqty.
        collect i_zsap1.
        clear i_zsap1.
      endloop.
      delete adjacent duplicates  from i_zsap comparing posnr menge .
    delete adjacent duplicates  from i_input comparing ebeln  posnr.
      loop at i_input.
       p_werks = i_input-werks.
        v_invdt = i_input-invdt.
        call function 'CONVERT_DATE_FORMAT'
          exporting
            i_date      = v_invdt
          importing
            e_calc_date = v_invdt.
        if i_input-apcno is initial.
          v_apcno = '0000'.
        else.
          v_apcno = i_input-apcno.
        endif.
        if i_input-spcno is initial.
          v_spcno = '0000'.
        else.
          v_spcno = i_input-spcno.
        endif.
        if i_input-cntno is initial.
          i_input-cntno = '0000'.
        endif.
        concatenate v_apcno v_spcno into i_input-pack.
       concatenate v_pack v_cntno into v_order separated by '-'.
       i_input-order = v_order.
        clear : v_itm, v_cnt, v_cntno, v_pack, v_apcno, v_spcno, v_order.
        concatenate i_input-posnr(4) '0' into v_posnr.
        select single lifnr into p_lifnr from zdrgsup
       where shcnm = i_input-shcnm.
        v_lifnr = p_lifnr.
        if sy-subrc <> 0.
          message e000(zcnc) with text-002.
        endif.
        select single * from eban
           where banfn eq i_input-ebeln
           and   bnfpo eq v_posnr.
        if sy-subrc eq 0.
          move eban-werks to i_input-werks.
          move eban-lgort to i_input-lgort.
          move eban-matkl to i_input-matkl.
          move eban-bnfpo to i_test-bnfpo.
          move eban-matnr to i_test-matnr.
          move eban-menge to i_test-menge.
          move eban-bsmng to i_test-bsmng.
          modify i_input.
          if not i_input-matnr eq i_test-matnr.
            move i_input-ebeln to i_error-prnum.
            move v_posnr to i_error-pritm.
            move i_input-matnr to i_error-inmat.
            move eban-matnr to i_error-prmat.
            i_error-remak = 'Material does not match'.
            append i_error.
            clear i_error.
          endif.
          v_quant = i_test-menge - i_test-bsmng.
          read table i_zsap1 with key ebeln = i_input-ebeln posnr = v_posnr.
          if not i_zsap1-asqty <= v_quant.
            move i_input-ebeln to i_error1-prnum.
            move i_zsap1-posnr to i_error1-pritm.
            move i_zsap1-asqty to i_error1-asqty.
           move eban-menge to i_error1-prqty.
            move v_quant to i_error1-prqty.
            i_error1-remak = 'Material Quantity does not match'.
            append i_error1.
            clear i_error1.
          endif.
          select single matnr infnr from eina
               into corresponding fields of i_eina
               where matnr eq i_input-matnr
               and lifnr eq p_lifnr.
          if sy-subrc = 0.
            append i_eina.
            check not i_eina[] is initial.
            select single * from eine
                   into  i_eine
                   where infnr eq i_eina-infnr
                   and werks eq eban-werks.
            if sy-subrc <> 0.
              move i_input-matnr to i_inferr-matnr.
              move i_eina-infnr to i_inferr-infnr.
              move eban-werks to i_inferr-werks.
              append i_inferr.
              clear i_inferr.
            endif.
          else.
            move i_input-matnr to i_inferrc-matnr.
            append i_inferrc.
            clear i_inferrc.
          endif.
          clear : i_eina, i_eine.
          clear :  i_zsap, i_zsap1,  i_input,  v_posnr,
                  v_quant, i_test.
        endif.
      endloop.
      delete adjacent duplicates from i_error1 comparing prnum pritm.
      perform chk_info_rec.
    endform.                    " f_upload_data
    *&      Form  f_check_data
    form f_check_data .
      if not i_input[] is initial.
        select * from mara
        into table i_mara
        for all entries in i_input
        where matnr eq i_input-matnr.
      endif.
      loop at i_mara.
        read table i_input with key matnr = i_mara-matnr.
        if sy-subrc <> 0.
          write : 'Following Part Numbers are not found in MARA'.
          write : / i_input-matnr.
        endif.
      endloop.
      if i_mara[] is initial.
        loop at i_input.
          format color col_heading intensified off.
          write : 'Following Part Numbers are not found in MARA'.
          format color col_normal intensified off.
          write : / i_input-matnr.
        endloop.
      endif.
      select single wkurs into p_wkurs from zdrgkurs
        where invno = p_invno.
      if sy-subrc ne 0.
        message e000(zcnc) with text-s11.
      endif.
      call function 'CONVERSION_EXIT_ALPHA_OUTPUT'
        exporting
          input  = p_lifnr
        importing
          output = p_lifnr.
      p_lifnrtxt = p_lifnr.
      p_wkurstxt = p_wkurs.
      p_bsartxt = p_bsart.
      loop at i_input.
        move-corresponding i_input to i_inputxt.
        append i_inputxt.
      endloop.
      select single ebeln
                    angnr from ekko
                    into i_invno
                    where angnr = p_invno.
      if sy-subrc = 0.
        perform display_err.
      endif.
    endform.                    " f_check_data
    *&      Form  f_process_session
          text
    form f_process_session.
      v_docdt1 = sy-datum.
      write v_docdt1 to v_docdt using edit mask '__.__.____'.
      perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=MEDOCTYPE'.
      perform bdc_field       using 'BDC_CURSOR'
                                    'MEPO_TOPLINE-BSART'.
      perform bdc_field       using 'MEPO_TOPLINE-BSART'
                                     p_bsartxt.
      perform bdc_field       using 'DYN_6000-LIST'
                                  '                                      1'.
      perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '/00'.
      perform bdc_field       using 'MEPO_TOPLINE-SUPERFIELD'
                                     p_lifnrtxt.
      perform bdc_field       using 'BDC_CURSOR'
                                    'MEPO1222-BUKRS'.
      perform bdc_field       using 'MEPO1222-EKORG'
                                    'SBAP'.
      perform bdc_field       using 'MEPO1222-EKGRP'
                                    'PG1'.
      perform bdc_field       using 'MEPO1222-BUKRS'
                                    'SBA'.
      perform bdc_field       using 'DYN_6000-LIST'
                                  '                                      1'.
      perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=TABHDT2'.
      perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '/00'.
      perform bdc_field       using 'MEPO_TOPLINE-BSART'
                                     p_bsartxt.
      perform bdc_field       using 'MEPO_TOPLINE-SUPERFIELD'
                                     p_lifnrtxt.
    ********************conditions***************************************
      perform bdc_field       using 'BDC_CURSOR'
                                    'KOMV-KSCHL(08)'.
      perform bdc_field       using 'KOMV-KSCHL(07)'
                                     'zot1'.
      perform bdc_field       using 'KOMV-KSCHL(08)'
                                    'zinc'.
      perform bdc_field       using 'KOMV-KSCHL(09)'
                                    'ziv1'.
      perform bdc_field       using 'DYN_6000-LIST'
                                  '                                      1'.
      perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=V69A_KOAN'.
      perform bdc_field       using 'BDC_CURSOR'
                                    'KOMV-KSCHL(01)'.
      perform bdc_field       using 'DYN_6000-LIST'
                                  '                                      1'.
      perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '/00'.
      perform bdc_field       using 'KOMV-KSCHL(02)'
                                    'zca1'.
      perform bdc_field       using 'KOMV-KSCHL(03)'
                                    'zfa1'.
      perform bdc_field       using 'DYN_6000-LIST'
                                  '                                      1'.
      perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=TABHDT7'.
      perform bdc_field       using 'BDC_CURSOR'
                                    'KOMV-KSCHL(09)'.
      perform bdc_field       using 'DYN_6000-LIST'
                                  '                                      1'.
      perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '/00'.
      perform bdc_field       using 'BDC_CURSOR'
                                    'MEPO1229-IHRAN'.
      perform bdc_field       using 'MEPO1229-ANGNR'
                                     p_invno.
      perform bdc_field       using 'MEPO1229-IHRAN'
                                     v_invdt.
      perform bdc_field       using 'DYN_6000-LIST'
                                  '                                      1'.
      perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=MEV4001BUTTON'.
      perform bdc_field       using 'BDC_CURSOR'
                                    'MEPO1229-IHRAN'.
      perform bdc_field       using 'DYN_6000-LIST'
                                  '                                      1'.
      perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=MEV4000BUTTON'.
      perform bdc_field       using 'BDC_CURSOR'
                                    'MEPO1229-IHRAN'.
      perform bdc_field       using 'DYN_6000-LIST'
                                  '                                      1'.
    loop at i_inputxt.
       concatenate i_inputxt-posnr(4) '0' into v_posnr.
       concatenate 'MEPO1211-EMATN(' v_itno ')' into v_matnr.
       concatenate 'MEPO1211-MENGE(' v_itno ')' into v_menge.
       concatenate 'MEPO1211-BANFN(' v_itno ')' into v_banfn.
       concatenate 'MEPO1211-BNFPO(' v_itno ')' into v_bnfpo.
       concatenate 'MEPO1211-BEDNR(' v_itno ')' into v_bednr.
       concatenate 'MEPO1211-WERKS(' v_itno ')' into v_werks.
       v_item = v_item + 10.
       endif.
       v_itno = v_itno + 1.
       perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
       perform bdc_field       using 'BDC_OKCODE'
                                     '/00'.
       perform bdc_field       using 'BDC_CURSOR'
                                      v_matnr.
       perform bdc_field       using  v_matnr "'MEPO1211-EMATN(01)'
                                      i_inputxt-matnr.
       perform bdc_field       using  v_menge "'MEPO1211-MENGE(01)'
                                      i_inputxt-asqty.
       perform bdc_field       using  v_banfn "'MEPO1211-BANFN(01)'
                                      i_inputxt-ebeln.
       perform bdc_field       using  v_bnfpo "'MEPO1211-BNFPO(01)'
                                      i_inputxt-posnr.
       perform bdc_field       using 'DYN_6000-LIST'
                                      v_itno.
      loop at i_inputxt .
        v_itno = sy-tabix.
        clear v_fnam.
        concatenate 'MEPO1211-EMATN('  v_itno ')' into v_fnam.
        perform bdc_field       using v_fnam
                                      i_inputxt-matnr.
        clear v_fnam.
        concatenate 'MEPO1211-MENGE('  v_itno ')' into v_fnam.
        perform bdc_field       using v_fnam
                                           i_inputxt-asqty.
        clear v_fnam.
        concatenate 'MEPO1211-BANFN('  v_itno ')' into v_fnam.
        perform bdc_field       using v_fnam
                                           i_inputxt-ebeln.
        clear v_fnam.
        concatenate 'MEPO1211-BNFPO('  v_itno ')' into v_fnam.
        perform bdc_field       using v_fnam
                                           i_inputxt-posnr.
        perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
        perform bdc_field       using 'BDC_OKCODE'
                                          '/00'.
      endloop.
    loop at i_inputxt from 6.
       v_itno = sy-tabix.
       clear v_fnam.
       concatenate 'MEPO1211-EMATN('  v_itno ')' into v_fnam.
       perform bdc_field       using v_fnam
                                     i_inputxt-matnr.
       clear v_fnam.
       concatenate 'MEPO1211-MENGE('  v_itno ')' into v_fnam.
       perform bdc_field       using v_fnam
                                          i_inputxt-asqty.
       clear v_fnam.
       concatenate 'MEPO1211-BANFN('  v_itno ')' into v_fnam.
       perform bdc_field       using v_fnam
                                          i_inputxt-ebeln.
       clear v_fnam.
       concatenate 'MEPO1211-BNFPO('  v_itno ')' into v_fnam.
       perform bdc_field       using v_fnam
                                          i_inputxt-posnr.
       perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
       perform bdc_field       using 'BDC_OKCODE'
                                         '/00'.
    endloop.
    perform bdc_field       using 'BDC_CURSOR'
                                   'MEPO1320-SLFDT(01)'.
    perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
    perform bdc_field       using 'BDC_OKCODE'
                                   '=TABHDT2'.
    perform bdc_field       using 'DYN_6000-LIST'
                               '                                      2'.
    perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
    perform bdc_field       using 'BDC_OKCODE'
                                   '=V69A_KOAK'.
    perform bdc_field       using 'BDC_CURSOR'
                                   'KOMV-KBETR(05)'.
    perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
    perform bdc_field       using 'BDC_OKCODE'
                                   '=MECHECKDOC'.
    perform bdc_field       using 'BDC_CURSOR'
                                   'KOMV-KSCHL(01)'.
    perform bdc_dynpro      using 'SAPMSSY0' '0120'.
    perform bdc_field       using 'BDC_CURSOR'
                                   '04/03'.
    perform bdc_field       using 'BDC_OKCODE'
                                   '=&ONT'.
    perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
    perform bdc_field       using 'BDC_OKCODE'
                                   '=MEV4000BUTTON'.
    perform bdc_field       using 'BDC_CURSOR'
                                   'MEPO_TOPLINE-BSART'.
    perform bdc_field       using 'DYN_6000-LIST'
                               '                                      2'.
    perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
    perform bdc_field       using 'BDC_OKCODE'
                                   '/00'.
    perform bdc_field       using 'BDC_CURSOR'
                                   'KOMV-KBETR(08)'.
    perform bdc_field       using 'KOMV-KBETR(03)'
                                   '             .54'.
    perform bdc_field       using 'KOMV-KBETR(08)'
                                   '             .54'.
    perform bdc_dynpro      using 'SAPLMEGUI' '0014'.
    perform bdc_field       using 'BDC_OKCODE'
                                   '=MESAVE'.
    perform bdc_field       using 'BDC_CURSOR'
                                   'MEPO1211-NETPR(01)'.
      perform bdc_transaction using 'ME21N'.
    endform.                    "f_process_session
    *&      Form  bdc_transaction
          text
         -->P_0464   text
    form bdc_transaction  using    tcode.
      data: l_mstring(480).
      data: l_subrc like sy-subrc.
      data: v_mode type c.
      v_mode = 'A'.
      refresh messtab.
      call transaction tcode using bdcdata
                       mode  v_mode
                       update 'S'
                       messages into messtab.
      l_subrc = sy-subrc.
         WRITE: / 'CALL_TRANSACTION',
                  TCODE,
                  'returncode:'(I05),
                  L_SUBRC,
                  'RECORD:',
                  SY-INDEX.
      loop at messtab.
        select single * from t100 where sprsl = messtab-msgspra
                                  and   arbgb = messtab-msgid
                                  and   msgnr = messtab-msgnr.
        if sy-subrc = 0.
          l_mstring = t100-text.
          if l_mstring cs '&1'.
            replace '&1' with messtab-msgv1 into l_mstring.
            replace '&2' with messtab-msgv2 into l_mstring.
            replace '&3' with messtab-msgv3 into l_mstring.
            replace '&4' with messtab-msgv4 into l_mstring.
          else.
            replace '&' with messtab-msgv1 into l_mstring.
            replace '&' with messtab-msgv2 into l_mstring.
            replace '&' with messtab-msgv3 into l_mstring.
            replace '&' with messtab-msgv4 into l_mstring.
          endif.
          condense l_mstring.
          if messtab-msgtyp eq 'E' or messtab-msgtyp eq 'W'.
            write: / messtab-msgtyp, l_mstring(250).
          endif.
          search  l_mstring for 'SEA'.
          if sy-subrc = 0.
            write: / messtab-msgtyp, l_mstring(250).
          endif.
        else.
          write: / messtab.
        endif.
      endloop.
    endform.                    " bdc_transaction
           Start new screen                                              *
    form bdc_dynpro using program dynpro.
      clear bdcdata.
      bdcdata-program  = program.
      bdcdata-dynpro   = dynpro.
      bdcdata-dynbegin = 'X'.
      append bdcdata.
    endform.                    "BDC_DYNPRO
           Insert field                                                  *
    form bdc_field using fnam fval.
      if fval <> space.
        clear bdcdata.
        bdcdata-fnam = fnam.
        bdcdata-fval = fval.
        append bdcdata.
      endif.
    endform.                    "BDC_FIELD
    *&      Form  f_display_errors
    form f_display_errors .
      if i_error[] is not initial.
        format color col_heading intensified off.
        uline .
        write :/ 'PR No     ',
                (10) 'Item No',
                (20) 'PR Part No',
                (30) 'Invoiced Part No',
                (60) 'Remark'.
        uline .
        loop at i_error.
          perform f_display_color.
          write :/ i_error-prnum,
                  (10) i_error-pritm ,
                  (20) i_error-prmat,
                  (30) i_error-inmat,
                  (60) i_error-remak.
          clear i_error.
        endloop.
      endif.
      if i_error1[] is not initial.
        format color col_heading intensified off.
        uline .
        write :/ 'PR No     ',
                (10) 'Item No',
                (20) 'PR Quantity',
                (30) 'Invoiced Quantity',
                (60) 'Remark'.
        uline .
        loop at i_error1.
          perform f_display_color.
          if not i_error1-asqty is initial.
            v_asqty = i_error1-asqty .
            v_prqty = i_error1-prqty.
            write :/ i_error1-prnum,
                (10) i_error1-pritm ,
                (20) v_prqty,
                (30) v_asqty,
                (60) i_error1-remak.
            clear : v_asqty, v_prqty.
          endif.
          clear i_error1.
        endloop.
      endif.
    endform.                    " f_display_errors
    *&      Form  f_display_color
    form f_display_color .
      if v_flag = 0.
        format color col_normal intensified on.
        v_flag = 1.
      elseif v_flag = 1.
        format color col_normal intensified off.
        v_flag = 0.
      endif.
    endform.                    " f_display_color
    *&      Form  display_err
          text
    -->  p1        text
    <--  p2        text
    form display_err .
      format color col_heading intensified off.
    write (120) text-006.
      uline .
      write : 'PR No     ',
              (15) 'Invoice No',
              (30) 'Remark'.
      uline.
      format color col_negative intensified off.
      write :/ i_invno-ebeln,
          (15) p_invno ,
          (30) 'Invoice Already Exists'.
    endform.                    " display_err
    *&      Form  f_check_calc_price
          text
    -->  p1        text
    <--  p2        text
    form f_check_calc_price .
      data : d_pric type p decimals 6 ,
             g_pric type p decimals 6,
             v_exch type p decimals 4 value '0.1049'.
      select single ebeln
                    waers
                    bedat
                    from ekko into  (v_ebeln , v_waers , v_podat)
                    where angnr eq p_invno.
      loop at i_input.
        concatenate i_input-posnr(4) '0' into v_posnr.
        select single p~ebeln
               p~ebelp
               matnr
               p~menge
               netpr
               into  i_netpr
               from eket as t inner join ekpo as p
               on t~ebeln eq p~ebeln
               and t~ebelp eq p~ebelp
               where t~ebeln eq v_ebeln
               and   t~banfn eq i_input-ebeln
               and   t~bnfpo eq v_posnr.
        if v_waers eq 'JPY'.
          i_netpr-netpr = i_netpr-netpr * 100.
        endif.
        if not i_input-netpr eq i_netpr-netpr.
          append i_netpr.
          clear : i_input, i_netpr, v_posnr.
        else.
          clear : i_input, i_netpr, v_posnr.
        endif.
      endloop.
      delete adjacent duplicates from i_netpr comparing ebeln ebelp matnr.
       modify zinvdiff from table i_final.
      if i_netpr[] is not initial.
        select matnr
               knumh
               from a004
               into table i_a004
               for all entries in i_netpr
               where matnr = i_netpr-matnr
               and kschl = 'ZPR0'
               and vkorg = 'SBAP'
               and vtweg = 'DD'
               and ( datab <= sy-datum and  datbi => sy-datum ).
        select  matnr
                knumh
                from a004
                into table i_a0041
                for all entries in i_netpr
                where matnr = i_netpr-matnr
                and kschl = 'ZPR0'
                and vkorg = 'EXPT'
                and vtweg = 'BR'
                and ( datab <= sy-datum and  datbi => sy-datum ).
        select matnr mvgr2 from mvke
               into  corresponding fields of table i_mvke
               for all entries in i_netpr
               where matnr = i_netpr-matnr
               and vkorg = 'SBAP'
               and vtweg = 'DD'.
        if i_a004[] is not initial.
          select  knumh
                  kbetr
                  from konp
                  into table i_konp
                  for all entries in i_a004
                  where knumh =  i_a004-knumh.
          loop at i_a004.
            read table i_konp with key knumh = i_a004-knumh.
            i_konp-kbetr =  i_konp-kbetr / 10.
            move i_konp-kbetr to i_a004-kbetr.
            modify i_a004.
            clear : i_konp, i_a004.
          endloop.
        endif.
        if i_a0041[] is not initial.
          select  knumh
                  kbetr
                  from  konp
                  into table i_konp1
                  for all entries in i_a0041
                  where knumh = i_a0041-knumh.
          loop at i_a0041.
            read table i_konp1 with key knumh = i_a0041-knumh.
            move i_konp1-kbetr to i_a0041-kbetr.
            modify i_a0041.
            clear : i_konp1, i_a0041.
          endloop.
        endif.
        if i_mvke[] is not initial.
          select pcode
                 fact
                 wfact
                 into table i_domsal
                 from zprice_grpsal
                 for all entries in i_mvke
                 where pcode = i_mvke-mvgr2
                 and vkorg = 'SBAP'
                 and vtweg = 'DD'
                 and lifnr = v_lifnr.
          select pcode
                 fact
                 wfact
                 into table i_grpsal
                 from zprice_grpsal
                 for all entries in i_mvke
                 where pcode = i_mvke-mvgr2
                 and vkorg = 'EXPT'
                 and vtweg = 'BR'
                 and lifnr = v_lifnr.
        endif.
        loop at i_input .
          read table i_mvke with key matnr = i_input-matnr.
          if sy-subrc = 0.
            move i_mvke-mvgr2 to i_input-mvgr2.
          endif.
          read table i_domsal with key pcode = i_input-mvgr2.
          if sy-subrc = 0.
            d_pric =  i_domsal-fact / i_domsal-wfact.
            i_input-dpric = i_input-netpr * d_pric * ( 112 / 100 ).
          endif.
          read table i_grpsal with key pcode = i_input-mvgr2.
          if sy-subrc = 0.
            g_pric =  i_grpsal-fact * i_grpsal-wfact.
            i_input-gpric = ( i_input-netpr * ( 112 / 100 ) ) / g_pric .
          endif.
          modify i_input.
          clear i_input.
          clear d_pric.
          clear g_pric.
        endloop.
      endif.
    endform.                    " f_check_price
    *&      Form  f_display_data
          text
    -->  p1        text
    <--  p2        text
    form f_display_data .
      loop at i_netpr.
        move i_netpr-ebeln to i_final-ebeln.
        move i_netpr-ebelp to i_final-ebelp.
        move i_netpr-matnr to i_final-matnr.
        move i_netpr-netpr to i_final-poprc.
        move i_netpr-menge to i_final-asqty.
        move p_invno to i_final-invoice.
        append i_final.
        clear i_final.
      endloop.
      loop at i_final.
        move v_podat to i_final-podat.
        read table i_input with key matnr = i_final-matnr.
        move i_input-netpr to i_final-invpr.
        move i_input-dpric to i_final-dcalclp.

    Dear Santosh,
    I haven't gone through your piece of code.
    But I can suggest a way out, while handling multiple line-items.
    The following code sample elucidate the use of multiple line-items. This is just an example for your understanding.
    FORM BDC_OPERATION .
      DATA:  LV_ARBPL(15)    TYPE  C,
                 LV_ROWNO(2)     TYPE  N.
      LOOP  AT  IT_TABDATA  INTO  WA_TABDATA.
        CLEAR:  LV_ARBPL
        LV_ROWNO  =  SY-TABIX.  
        CONCATENATE  'PLPOD-ARBPL'    '('  LV_ROWNO  ')'  INTO  LV_ARBPL.
        PERFORM  BDC_DYNPRO  USING  'SAPLCPDI'          '1400'.
        PERFORM  BDC_FIELD       USING  'BDC_CURSOR'   LV_ARBPL.
        PERFORM  BDC_FIELD       USING  'BDC_OKCODE'   '=PICK'.
        PERFORM  BDC_FIELD       USING  LV_ARBPL          WA_TABDATA-ARBPL.
      ENDLOOP.
    ENDFORM.                    " BDC_OPERATION
    Regards,
    Abir
    Please don't forget to award points  *

  • Is it possible to change fonts in dropdown lists for question screens?

    I'm using Captivate 7, and creating training modules for a client with it. In these training modules, there are random quiz questions throughout. Some of these contain dropdown lists where the user will have to select choices A-D, etc. For some reason, after publishing, the fonts are all different within the dropdown list (Option A is in Times New Roman, Option B-D in Arial). I can't seem to find any option to edit these - does anyone have any insight on how to set these fonts?

    Figured this one out. Using the P1_ROWS item, added a static LOV with the correct values to override the one APEX was providing. The P1_ROWS item goes in the Number of Rows (Item) field in the layout and pagination section of the report.

  • Need help to change line item text for 220 Line items

    Hi Specialists,
    The user has posted a reversal entry ( doc type : Manual Accrual) using TCODE FBS1.
    It has 220 line items.
    Is there a way in SAP he can change the text of All Line Items for a particular document number in one shot ( Mass Change).
    Pls note : Header text remains same . Only the line item text needs to be changed in one shot .
    For Eg :
      1 50 2758000047 Accruals for CAS               Accrl - Dec 08 / Nalini Marketing(Door Mats) - Oth
      2 50 2758000047 Accruals for CAS               Accrl - Dec 08 / SKC - M&E Repair
    Changed Description:
      1 50 2758000047 Accruals for CAS               Accrl - Jan 09 / Nalini Marketing(Door Mats) - Oth
      2 50 2758000047 Accruals for CAS               Accrl - Jan 09 / SKC - M&E Repair
    Thanks,
    Abhinav.

    Hi
    This is possible, please follow as below:
    If it is GL (FBL3N), Customer (FBL5N), Vendor (FBL1N) line item use the TCODE' mentioned.
    In the selection screen, if possible give all the document numbers (it is possible with addition selection).
    Once you get the output with the line item, select all line items and go to the menu options  there you can see the mass change option, it will give one popup screen give the new value in the text field and proceed further.
    VVR

  • Changing line item delivery address in shopping cart need to reflect same in all line items

    Hi All,
    Need help on below,
    I have a requirement that when we change the shopping cart line item delivery address same needs to reflect all line items.
    Suppose a shopping cart having 3 line items 1, 2 and 3. if i change the delivery address of line item 1, the same needs to reflect the line item 2 and 3 as well.
    In my case  if we change the 1's delivery address, after processing its genrating the IDOC on line item wise not in the header wise. And same having the different delivery address.
    Thanks in advance.
    regards:
    Ramesh

    Hello Ramesh,
    we can do this changes in BBP_DOC_CHANGE_BADI . Create a Implementation for the above BADI and Inside that Implementation BADI method just call the function module BBP_PD_SC_GETDETAIL for SC item details by passing the Header GUID.
    Once you get the Partner table(E_PARTNER) details.. Keeping a loop on SC item(E_ITEM) and change address number(ADDR_NO) in Partner table when Partner function eq X( X is an partner function values which you define in SPRO.).
    pseudo logic:
      CALL FUNCTION 'BBP_PD_SC_GETDETAIL'
        EXPORTING
          i_guid    = l_guid
        TABLES
          e_item    = lt_item
          e_partner = lt_partner.
    * Check for all the line items if vendor is assigned
      LOOP AT lt_item INTO lwa_item.
        READ TABLE lt_partner INTO lwa_partner
                          WITH KEY partner_fct = '00000019'
                                   del_ind     = space
                                   p_guid      = lwa_item-guid.
        IF sy-subrc eq 0 .
       * modification of address number logic here in partner table
        ENDIF.
      ENDLOOP.
    All the best.
    Regards,
    Sankarbabu

  • Userexit for changing line item from header, tcode VA42, VA41

    Hi All,
    I have a Zfield (VBAK) for the sales document (contract) at the header level in Additional tab.
    Also the same zfield is present in VBAP table for all line items.
    When this field is maintained by the user using Tcode VA41 or VA42 the line item zfield should also get updated.
    I am trying to find out if User Exits
    1. USEREXIT_MOVE_FIELD_TO_VBAK
    2. USEREXIT_SAVE_DOCUMENT_PREPARE
    might work. Can anyone tell me if there is access to line items in the above 2 user exits which I can modify.
    Thanks,
    Kajal

    Hi Breakpoint,
    Yes I did use table XVBAP in uesr exit SAVE_DOCUMENT_PREPARE.
    But somehow my changed values in XVBAP table is not reflected in the table VBAP.
    Am I missing something here.
    My piece od code  in the user exit :
    FORM XVBAP_ZZREBREL_CHANGE  TABLES t_xvbap STRUCTURE vbapvb
                               USING  P_VBAK_ZZREBREL TYPE vbak-zzrebrel.
    data wa_xvbap type vbapvb.
      IF p_vbak_zzrebrel = 'X'.
        LOOP AT t_xvbap into wa_xvbap.
          wa_xvbap-zzrebrel = 'X'.
          MODIFY t_xvbap from wa_xvbap INDEX sy-tabix TRANSPORTING zzrebrel.
          clear wa_xvbap.
        ENDLOOP.
      ENDIF.
    ENDFORM.

  • Blank line in DropDown List box

    I have a case where I want to add a blank entry in a drop down list box that is bound to a database table. I want the blank to be the default, then the user can select the bound values if desired. How do I do this without binding the drop down box to a prepopulated array?

    Hi
    Go to the JSP source of that page and add
    <f:selectItem itemLabel="None" itemValue="0"/> before
    the line <f:selectItems binding="#{Page1.dropdown1SelectItems}" ....
    With this you can deselect the previous selection by selecting None from the dropdown list. You can also use blank spaces instead of None.
    Thanks
    Srinivas

Maybe you are looking for