<?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: PO Creation in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870765#M673547</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI, &lt;/P&gt;&lt;P&gt;First of all thanks for your reply, as per your suggestion I have modified my code"&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 to store the data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  poheader LIKE bapimepoheader,&lt;/P&gt;&lt;P&gt;       poheaderx LIKE  bapimepoheaderx,&lt;/P&gt;&lt;P&gt;       poitem LIKE bapimepoitem OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       poitemx LIKE  bapimepoitemx  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       return LIKE bapiret2 OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       return2 LIKE  bapiret2 OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       exppurchaseorder  LIKE  bapimepoheader-po_number.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF itab OCCURS 0,&lt;/P&gt;&lt;P&gt;        ref_no(2),&lt;/P&gt;&lt;P&gt;        vend_no(10),&lt;/P&gt;&lt;P&gt;        material(18),&lt;/P&gt;&lt;P&gt;        Quantity(13),&lt;/P&gt;&lt;P&gt;        Price(10),&lt;/P&gt;&lt;P&gt;        ord_unit(7),&lt;/P&gt;&lt;P&gt;        Plant(4),&lt;/P&gt;&lt;P&gt;        Strg_loc(4),&lt;/P&gt;&lt;P&gt;        purch_grp(3),&lt;/P&gt;&lt;P&gt;        purch_org(4),&lt;/P&gt;&lt;P&gt;        c_code(3),&lt;/P&gt;&lt;P&gt;        doc_typ(4),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      END OF itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: it_ref_no_old(2)  type c,&lt;/P&gt;&lt;P&gt;      it_record        like line of itab,&lt;/P&gt;&lt;P&gt;      it_record_x      like line of itab.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Definition of Variables                                             *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;data: v_semfile like RLGRAP-FILENAME,&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;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;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform get_data.&lt;/P&gt;&lt;P&gt;  perform data_process.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;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  get_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 get_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  v_semfile = p_ifname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      filename                = v_semfile&lt;/P&gt;&lt;P&gt;      filetype                = 'DAT'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      data_tab                = itab&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      conversion_error        = 1&lt;/P&gt;&lt;P&gt;      file_open_error         = 2&lt;/P&gt;&lt;P&gt;      file_read_error         = 3&lt;/P&gt;&lt;P&gt;      invalid_table_width     = 4&lt;/P&gt;&lt;P&gt;      invalid_type            = 5&lt;/P&gt;&lt;P&gt;      no_batch                = 6&lt;/P&gt;&lt;P&gt;      unknown_error           = 7&lt;/P&gt;&lt;P&gt;      gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;      OTHERS                  = 9.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_data&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  call_bapi&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 call_bapi .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT itab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; moving header data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    MOVE: itab-vend_no    TO  poheader-vendor,&lt;/P&gt;&lt;P&gt;          itab-doc_typ    TO  poheader-doc_type,&lt;/P&gt;&lt;P&gt;          itab-purch_org  TO  poheader-purch_org,&lt;/P&gt;&lt;P&gt;          itab-purch_grp  TO  poheader-pur_group,&lt;/P&gt;&lt;P&gt;          itab-c_code     TO  poheader-comp_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; updating header data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    poheaderx-vendor     =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-doc_type   =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-doc_date   =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-purch_org  =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-pur_group  =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-comp_code  =  'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; moving item data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    MOVE: itab-plant      TO  poitem-plant,&lt;/P&gt;&lt;P&gt;          itab-Strg_loc   TO  poitem-stge_loc,&lt;/P&gt;&lt;P&gt;          itab-material   TO  poitem-material,&lt;/P&gt;&lt;P&gt;          itab-quantity   TO  poitem-quantity,&lt;/P&gt;&lt;P&gt;          itab-price      TO  poitem-price_unit,&lt;/P&gt;&lt;P&gt;          itab-ref_no     TO  poitem-ref_doc,&lt;/P&gt;&lt;P&gt;          itab-ord_unit   TO  poitem-po_unit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;updating Item data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    poitemx-plant        =  'X'.&lt;/P&gt;&lt;P&gt;    poitemx-stge_loc     =  'X'.&lt;/P&gt;&lt;P&gt;    poitemx-material     =  'X'.&lt;/P&gt;&lt;P&gt;    poitemx-quantity     =  'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND:  poitem, poitemx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BAPI_PO_CREATE1'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        poheader         = poheader&lt;/P&gt;&lt;P&gt;        poheaderx        = poheaderx&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        exppurchaseorder = exppurchaseorder&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        poitem           = poitem&lt;/P&gt;&lt;P&gt;        poitemx          = poitemx&lt;/P&gt;&lt;P&gt;        return           = return.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        return = return2.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " call_bapi&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  data_process&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 data_process .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  sort itab BY ref_no.&lt;/P&gt;&lt;P&gt;  clear: it_ref_no_old.&lt;/P&gt;&lt;P&gt;  loop at itab into it_record.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if  it_record-ref_no NE it_ref_no_old .&lt;/P&gt;&lt;P&gt;      loop AT itab into it_record_x&lt;/P&gt;&lt;P&gt;                           where  ref_no = it_record-ref_no .&lt;/P&gt;&lt;P&gt;      endloop.&lt;/P&gt;&lt;P&gt;      if  syst-subrc = 0 .&lt;/P&gt;&lt;P&gt;        PERFORM call_bapi.&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;    it_ref_no_old = it_record-ref_no.&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " data_process&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So this should work for me right??&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Rajeev Gupta&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: &lt;/P&gt;&lt;P&gt;        Rajeev Gupta&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 03 Oct 2007 18:22:30 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-10-03T18:22:30Z</dc:date>
    <item>
      <title>PO Creation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870762#M673544</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Gurus, &lt;/P&gt;&lt;P&gt;I am new to ABAP and right now I am working on an interface where I need to get the data from the text file and create PO and for this I have written the following code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  poheader LIKE bapimepoheader,&lt;/P&gt;&lt;P&gt;       poheaderx LIKE  bapimepoheaderx,&lt;/P&gt;&lt;P&gt;       poitem LIKE bapimepoitem OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       poitemx LIKE  bapimepoitemx  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       return LIKE bapiret2 OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       return2 LIKE  bapiret2 OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       exppurchaseorder  LIKE  bapimepoheader-po_number.&lt;/P&gt;&lt;P&gt;       &lt;/P&gt;&lt;P&gt;DATA: BEGIN OF itab OCCURS 0,&lt;/P&gt;&lt;P&gt;        ref_no(2),&lt;/P&gt;&lt;P&gt;        vend_no(10),&lt;/P&gt;&lt;P&gt;        material(18),&lt;/P&gt;&lt;P&gt;        Quantity(13),&lt;/P&gt;&lt;P&gt;        Price(10),&lt;/P&gt;&lt;P&gt;        ord_unit(7),&lt;/P&gt;&lt;P&gt;        Plant(4),&lt;/P&gt;&lt;P&gt;        Strg_loc(4),&lt;/P&gt;&lt;P&gt;        purch_grp(3),&lt;/P&gt;&lt;P&gt;        purch_org(4),&lt;/P&gt;&lt;P&gt;        c_code(3),&lt;/P&gt;&lt;P&gt;        doc_typ(4),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      END OF itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;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;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM get_data.&lt;/P&gt;&lt;P&gt;  PERFORM call_bapi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;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  get_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 get_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      filename                = 'C:\SAP\purchaseorder_bapi'&lt;/P&gt;&lt;P&gt;      filetype                = 'DAT'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      data_tab                = itab&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      conversion_error        = 1&lt;/P&gt;&lt;P&gt;      file_open_error         = 2&lt;/P&gt;&lt;P&gt;      file_read_error         = 3&lt;/P&gt;&lt;P&gt;      invalid_table_width     = 4&lt;/P&gt;&lt;P&gt;      invalid_type            = 5&lt;/P&gt;&lt;P&gt;      no_batch                = 6&lt;/P&gt;&lt;P&gt;      unknown_error           = 7&lt;/P&gt;&lt;P&gt;      gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;      OTHERS                  = 9.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  call_bapi&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 call_bapi .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT itab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; moving header data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    MOVE: itab-vend_no    TO  poheader-vendor,&lt;/P&gt;&lt;P&gt;          itab-doc_typ    TO  poheader-doc_type,&lt;/P&gt;&lt;P&gt;          itab-purch_org  TO  poheader-purch_org,&lt;/P&gt;&lt;P&gt;          itab-purch_grp  TO  poheader-pur_group,&lt;/P&gt;&lt;P&gt;          itab-c_code     TO  poheader-comp_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; updating header data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    poheaderx-vendor     =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-doc_type   =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-doc_date   =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-purch_org  =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-pur_group  =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-comp_code  =  'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; moving item data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    MOVE: itab-plant      TO  poitem-plant,&lt;/P&gt;&lt;P&gt;          itab-Strg_loc   TO  poitem-stge_loc,&lt;/P&gt;&lt;P&gt;          itab-material   TO  poitem-material,&lt;/P&gt;&lt;P&gt;          itab-quantity   TO  poitem-quantity,&lt;/P&gt;&lt;P&gt;          itab-price      TO  poitem-price_unit,&lt;/P&gt;&lt;P&gt;          itab-ref_no     TO  poitem-ref_doc,&lt;/P&gt;&lt;P&gt;          itab-ord_unit   TO  poitem-po_unit.       &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;updating Item data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    poitemx-plant        =  'X'.&lt;/P&gt;&lt;P&gt;    poitemx-stge_loc     =  'X'.&lt;/P&gt;&lt;P&gt;    poitemx-material     =  'X'.&lt;/P&gt;&lt;P&gt;    poitemx-quantity     =  'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND:  poitem, poitemx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BAPI_PO_CREATE1'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        poheader         = poheader&lt;/P&gt;&lt;P&gt;        poheaderx        = poheaderx&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        exppurchaseorder = exppurchaseorder&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        poitem           = poitem&lt;/P&gt;&lt;P&gt;        poitemx          = poitemx&lt;/P&gt;&lt;P&gt;        return           = return.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        return = return2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE:/ exppurchaseorder.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " call_bapi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and my text file looks like this:&lt;/P&gt;&lt;P&gt;the sequence of the fileds are: &lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;Ref no., Vendor, material,Quantity, Price, Ord_unit, Plant, &lt;/P&gt;&lt;P&gt;Strg_loc, purch_org, purch_grp,c_code, doc_typ&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1 101 123 100 10 car 101 121 114 112 222 NB&lt;/P&gt;&lt;P&gt;1 101 234 100 10 buc 101 121 114 112 222 NB&lt;/P&gt;&lt;P&gt;1 101 567 100 10 car 101 121 114 112 222 NB&lt;/P&gt;&lt;P&gt;2 102 123 100 10 car 101 121 114 112 222 NB&lt;/P&gt;&lt;P&gt;2 102 567 100 10 car 101 121 114 112 222 NB&lt;/P&gt;&lt;P&gt;3 103 234 100 10 buc 101 121 114 112 222 NB&lt;/P&gt;&lt;P&gt;3 103 567 100 10 car 101 121 114 112 222 NB&lt;/P&gt;&lt;P&gt;3 103 123 100 10 car 101 121 114 112 222 NB&lt;/P&gt;&lt;P&gt;4 104 567 100 10 car 101 121 114 112 222 NB&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So basically my program should take care of all the aspects in the above text file,So basically on the basis of unique refrence number my program should create three PO's  but as of now it is only taking care of ist item in the file.  Can you please tell me how to take care of the multiple items.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Rajeev Gupta&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Oct 2007 15:36:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870762#M673544</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-10-03T15:36:43Z</dc:date>
    </item>
    <item>
      <title>Re: PO Creation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870763#M673545</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 think you have to change the logic&lt;/P&gt;&lt;P&gt;Take the ITAB to different internal table ITAB1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sort itab1 by ref_no.&lt;/P&gt;&lt;P&gt;delete adjacent duplicates from itab1 comparing ref_no.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Loop at itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table itab with key ref_no = itab1-ref_no.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MOVE: itab-vend_no TO poheader-vendor,&lt;/P&gt;&lt;P&gt;itab-doc_typ TO poheader-doc_type,&lt;/P&gt;&lt;P&gt;itab-purch_org TO poheader-purch_org,&lt;/P&gt;&lt;P&gt;itab-purch_grp TO poheader-pur_group,&lt;/P&gt;&lt;P&gt;itab-c_code TO poheader-comp_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;updating header data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;poheaderx-vendor = 'X'.&lt;/P&gt;&lt;P&gt;poheaderx-doc_type = 'X'.&lt;/P&gt;&lt;P&gt;poheaderx-doc_date = 'X'.&lt;/P&gt;&lt;P&gt;poheaderx-purch_org = 'X'.&lt;/P&gt;&lt;P&gt;poheaderx-pur_group = 'X'.&lt;/P&gt;&lt;P&gt;poheaderx-comp_code = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at itab where ref_no = itab1-ref_no.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MOVE: itab-plant TO poitem-plant,&lt;/P&gt;&lt;P&gt;itab-Strg_loc TO poitem-stge_loc,&lt;/P&gt;&lt;P&gt;itab-material TO poitem-material,&lt;/P&gt;&lt;P&gt;itab-quantity TO poitem-quantity,&lt;/P&gt;&lt;P&gt;itab-price TO poitem-price_unit,&lt;/P&gt;&lt;P&gt;itab-ref_no TO poitem-ref_doc,&lt;/P&gt;&lt;P&gt;itab-ord_unit TO poitem-po_unit. &lt;/P&gt;&lt;P&gt;append poitem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;updating Item data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;poitemx-plant = 'X'.&lt;/P&gt;&lt;P&gt;poitemx-stge_loc = 'X'.&lt;/P&gt;&lt;P&gt;poitemx-material = 'X'.&lt;/P&gt;&lt;P&gt;poitemx-quantity = 'X'.&lt;/P&gt;&lt;P&gt;append poitemx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BAPI_PO_CREATE1'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;poheader = poheader&lt;/P&gt;&lt;P&gt;poheaderx = poheaderx&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;exppurchaseorder = exppurchaseorder&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;poitem = poitem&lt;/P&gt;&lt;P&gt;poitemx = poitemx&lt;/P&gt;&lt;P&gt;return = return.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;return = return2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE:/ exppurchaseorder&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Refresh : poitem, poitemx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope this should work.&lt;/P&gt;&lt;P&gt;Let me know, if you need further information on the same&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;MD&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Oct 2007 15:53:36 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870763#M673545</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-10-03T15:53:36Z</dc:date>
    </item>
    <item>
      <title>Re: PO Creation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870764#M673546</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Rajeev&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I assume that all records having the same REF NO should belong to the same purchase order.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;DATA:
  ld_refno_old(2)  type c,
  ls_record          LIKE LINE OF itab,
  ls_record_x      LIKE LINE OF itab.

  SORT itab BY ref_no.

  CLEAR: ls_refno_old.
  LOOP AT itab INTO ls_record.

    IF ( ls_record-ref_no NE ld_refno_old ).
      LOOP AT itab INTO ls_record_x
                           WHERE ( ref_no = ls_record-ref_no ).
"       collect items of PO
      ENDLOOP.
      IF ( syst-subrc = 0 ).
"       create PO -&amp;gt; commit work
      ENDIF.
    ENDIF.

    ld_refno_old = ls_record-refno.  " update
  ENDLOOP.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I prefer to use this kind of logic instead of AT NEW or similar statements.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;  Uwe&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Oct 2007 16:00:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870764#M673546</guid>
      <dc:creator>uwe_schieferstein</dc:creator>
      <dc:date>2007-10-03T16:00:03Z</dc:date>
    </item>
    <item>
      <title>Re: PO Creation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870765#M673547</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI, &lt;/P&gt;&lt;P&gt;First of all thanks for your reply, as per your suggestion I have modified my code"&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 to store the data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  poheader LIKE bapimepoheader,&lt;/P&gt;&lt;P&gt;       poheaderx LIKE  bapimepoheaderx,&lt;/P&gt;&lt;P&gt;       poitem LIKE bapimepoitem OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       poitemx LIKE  bapimepoitemx  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       return LIKE bapiret2 OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       return2 LIKE  bapiret2 OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       exppurchaseorder  LIKE  bapimepoheader-po_number.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF itab OCCURS 0,&lt;/P&gt;&lt;P&gt;        ref_no(2),&lt;/P&gt;&lt;P&gt;        vend_no(10),&lt;/P&gt;&lt;P&gt;        material(18),&lt;/P&gt;&lt;P&gt;        Quantity(13),&lt;/P&gt;&lt;P&gt;        Price(10),&lt;/P&gt;&lt;P&gt;        ord_unit(7),&lt;/P&gt;&lt;P&gt;        Plant(4),&lt;/P&gt;&lt;P&gt;        Strg_loc(4),&lt;/P&gt;&lt;P&gt;        purch_grp(3),&lt;/P&gt;&lt;P&gt;        purch_org(4),&lt;/P&gt;&lt;P&gt;        c_code(3),&lt;/P&gt;&lt;P&gt;        doc_typ(4),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      END OF itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data: it_ref_no_old(2)  type c,&lt;/P&gt;&lt;P&gt;      it_record        like line of itab,&lt;/P&gt;&lt;P&gt;      it_record_x      like line of itab.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Definition of Variables                                             *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;data: v_semfile like RLGRAP-FILENAME,&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;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;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform get_data.&lt;/P&gt;&lt;P&gt;  perform data_process.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;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  get_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 get_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  v_semfile = p_ifname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      filename                = v_semfile&lt;/P&gt;&lt;P&gt;      filetype                = 'DAT'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      data_tab                = itab&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      conversion_error        = 1&lt;/P&gt;&lt;P&gt;      file_open_error         = 2&lt;/P&gt;&lt;P&gt;      file_read_error         = 3&lt;/P&gt;&lt;P&gt;      invalid_table_width     = 4&lt;/P&gt;&lt;P&gt;      invalid_type            = 5&lt;/P&gt;&lt;P&gt;      no_batch                = 6&lt;/P&gt;&lt;P&gt;      unknown_error           = 7&lt;/P&gt;&lt;P&gt;      gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;      OTHERS                  = 9.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_data&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  call_bapi&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 call_bapi .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT itab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; moving header data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    MOVE: itab-vend_no    TO  poheader-vendor,&lt;/P&gt;&lt;P&gt;          itab-doc_typ    TO  poheader-doc_type,&lt;/P&gt;&lt;P&gt;          itab-purch_org  TO  poheader-purch_org,&lt;/P&gt;&lt;P&gt;          itab-purch_grp  TO  poheader-pur_group,&lt;/P&gt;&lt;P&gt;          itab-c_code     TO  poheader-comp_code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; updating header data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    poheaderx-vendor     =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-doc_type   =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-doc_date   =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-purch_org  =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-pur_group  =  'X'.&lt;/P&gt;&lt;P&gt;    poheaderx-comp_code  =  'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; moving item data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    MOVE: itab-plant      TO  poitem-plant,&lt;/P&gt;&lt;P&gt;          itab-Strg_loc   TO  poitem-stge_loc,&lt;/P&gt;&lt;P&gt;          itab-material   TO  poitem-material,&lt;/P&gt;&lt;P&gt;          itab-quantity   TO  poitem-quantity,&lt;/P&gt;&lt;P&gt;          itab-price      TO  poitem-price_unit,&lt;/P&gt;&lt;P&gt;          itab-ref_no     TO  poitem-ref_doc,&lt;/P&gt;&lt;P&gt;          itab-ord_unit   TO  poitem-po_unit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;updating Item data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    poitemx-plant        =  'X'.&lt;/P&gt;&lt;P&gt;    poitemx-stge_loc     =  'X'.&lt;/P&gt;&lt;P&gt;    poitemx-material     =  'X'.&lt;/P&gt;&lt;P&gt;    poitemx-quantity     =  'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND:  poitem, poitemx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BAPI_PO_CREATE1'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        poheader         = poheader&lt;/P&gt;&lt;P&gt;        poheaderx        = poheaderx&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        exppurchaseorder = exppurchaseorder&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        poitem           = poitem&lt;/P&gt;&lt;P&gt;        poitemx          = poitemx&lt;/P&gt;&lt;P&gt;        return           = return.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        return = return2.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " call_bapi&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  data_process&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 data_process .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  sort itab BY ref_no.&lt;/P&gt;&lt;P&gt;  clear: it_ref_no_old.&lt;/P&gt;&lt;P&gt;  loop at itab into it_record.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if  it_record-ref_no NE it_ref_no_old .&lt;/P&gt;&lt;P&gt;      loop AT itab into it_record_x&lt;/P&gt;&lt;P&gt;                           where  ref_no = it_record-ref_no .&lt;/P&gt;&lt;P&gt;      endloop.&lt;/P&gt;&lt;P&gt;      if  syst-subrc = 0 .&lt;/P&gt;&lt;P&gt;        PERFORM call_bapi.&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;    it_ref_no_old = it_record-ref_no.&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " data_process&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So this should work for me right??&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Rajeev Gupta&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: &lt;/P&gt;&lt;P&gt;        Rajeev Gupta&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Oct 2007 18:22:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870765#M673547</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-10-03T18:22:30Z</dc:date>
    </item>
    <item>
      <title>Re: PO Creation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870766#M673548</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I see in your code -&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;poitemx-price_unit,&lt;/P&gt;&lt;P&gt;poitemx-ref_doc,&lt;/P&gt;&lt;P&gt;poitemx-po_unit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;are not populated with value 'X'. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please add that too.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Oct 2007 18:42:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870766#M673548</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-10-03T18:42:39Z</dc:date>
    </item>
    <item>
      <title>Re: PO Creation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870767#M673549</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;ok I will do that...&lt;/P&gt;&lt;P&gt;is everything else fine???&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Rajeev Gupta&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Oct 2007 19:05:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870767#M673549</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-10-03T19:05:34Z</dc:date>
    </item>
    <item>
      <title>Re: PO Creation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870768#M673550</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You have &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;return = return2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;just after the BAPI call.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If BAPI call is successful, then only you should commit. You need to check contents of RETURN table, if last record contains a SUCCESS message, then you should commit. Run your program in debug, check the value and it will help you to handle this further.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Oct 2007 19:11:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/po-creation/m-p/2870768#M673550</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-10-03T19:11:05Z</dc:date>
    </item>
  </channel>
</rss>

