Delete Service Line in a PO using BAPI_PO_CHANGE

Hi Experts,
I am able to create a new Service line using BAPI_PO_CHANGE in a Purchase Order. But not able to delete the existing service line. In the BAPI return log, it is showing 'PO Changed', still the service line exists.
Please refer the code below and suggest me the changes required to delete the Service line from PO.
Thanks in advance for your help.
DATA: i_tab TYPE STANDARD TABLE OF ty_tab,
      w_tab TYPE ty_tab,
      poitem TYPE STANDARD TABLE OF bapimepoitem WITH HEADER LINE,
      poitemx TYPE STANDARD TABLE OF bapimepoitemx WITH HEADER LINE,
      poservices TYPE STANDARD TABLE OF bapiesllc WITH HEADER LINE,
      return TYPE STANDARD TABLE OF bapiret2 WITH HEADER LINE,
      poaccount TYPE STANDARD TABLE OF bapimepoaccount WITH HEADER LINE,
      poaccountx TYPE STANDARD TABLE OF bapimepoaccountx WITH HEADER LINE,
      posrvaccessvalues TYPE STANDARD TABLE OF bapiesklc WITH HEADER LINE.
poitem-po_item = '10'.
poitem-pckg_no = '0000001329'.
poitem-item_cat = '0'.
APPEND poitem.
poitemx-po_item = '10'.
poitemx-po_itemx = 'X'.
poitemx-pckg_no = 'X'.
poitemx-item_cat = 'X'.
APPEND poitemx.
poservices-pckg_no = '0000001329'.
poservices-line_no = '0000000001'.
poservices-ext_line = '0000000010'.
poservices-service = '000000000005000010'.
poservices-subpckg_no = '0000000000'.
poservices-delete_ind = 'X'.
APPEND poservices.
CALL FUNCTION 'BAPI_PO_CHANGE'
  EXPORTING
    purchaseorder = '7200000017'
  TABLES
    return        = return[]
    poitem        = poitem[]
    poitemx       = poitemx[]
    poservices    = poservices[].
BREAK-POINT.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
Thanks & Regards,
Revanth

In method BAPI_PO_CHANGE, you can only create service items, you cannot change them.
FU BAPI_PO_CHANGE                POSERVICES
Short Text
External Services: Service Lines
Description
This table contains the services and services specifications outline for the purchase order.
Field OUTL_IND is used to flag a line as an outline line. The service lines are assigned to the outline lines using the fields PCKG_NO (for the service line) and SUBPCKG_NO (for the outline line).
The outline hierarchy is mapped using the fields LINE_NO and HI_LINE_NO. Field HI_LINE_NO links to field LINE_NO of the hierarchically superior outline.
Note
In method BAPI_PO_CHANGE, you can only create service items, you cannot change them.
For more information on the individual parameter fields, see the data element documentation in the ABAP Dictionary.
Function Module
BAPI_PO_CHANGE

Similar Messages

  • Idoc successfully posted without deleting service line

    Dear Team,
    I am trying to delete the service line item for multiple service lines throguh Idoc (FM : BAPI_PO_CHANGE) its bit of surprising thata my IDOC is getting posted without any errors but nothing is changing ,however the value is getting changed for single line but not able to delete the service line .
    I can able to delete the main line item but not the service line item .Anyone can quickly help on this i am trying since last two days but nothing worked for me .
    Also kindly confirm me if is there any SAP note i need to check
    Thanks for your support ..
    Regards
    Kiran Kumar
    Please find Below Idoc passing values :
    Header -
    PO_NUMBER      C00014
    DOC_TYPE      CCTC
    VENDOR      0000010001
    PURCH_ORG      D001
    PUR_GROUP      018
    CURRENCY      EUR
    Header X
    PO_NUMBER      X
    DOC_TYPE      X
    PURCH_ORG      X
    PUR_GROUP      X
    CURRENCY      X
    Item
    PO_ITEM      00010
    SHORT_TEXT      ITEM 10 CHANGE
    PLANT      D001
    MATL_GROUP      10341
    ITEM_CAT      9
    ACCTASSCAT      T
    PCKG_NO      0000000035
    SRV_BASED_IV      X
    Item X
    PO_ITEM 00010
    PO_ITEMX      X
    SHORT_TEXT      X
    PLANT      X
    MATL_GROUP      X
    ITEM_CAT      X
    ACCTASSCAT      X
    PCKG_NO      X
    SRV_BASED_IV      X
    PO Account :
    PO_ITEM      00010
    SERIAL_NO      01
    WBS_ELEMENT      D-000015-01-001
    RES_DOC      0050000014
    RES_ITEM      001
    Po Account X :
    PO_ITEM      00010
    SERIAL_NO      01
    PO_ITEMX      X
    SERIAL_NOX      X
    WBS_ELEMENT      X
    RES_DOC      X
    RES_ITEM      X
    Service line :
    PCKG_NO      0000000035
    LINE_NO      0000000001
    EXT_LINE      0000000010
    OUTL_IND      X
    SUBPCKG_NO      0000000050
    linkage Service line1 :
    PCKG_NO      0000000050
    LINE_NO      0000000002
    EXT_LINE      0000000010
    QUANTITY      5.00
    BASE_UOM      D
    PRICE_UNIT      1
    GR_PRICE      5.00
    SHORT_TEXT      TEST CHANGE
    MATL_GROUP      10341
    NET_VALUE      25.00
    linkage Service line 2:
    PCKG_NO      0000000050
    LINE_NO      0000000003
    EXT_LINE      0000000020
    QUANTITY      5.00
    BASE_UOM      D
    PRICE_UNIT      1
    GR_PRICE      6.00
    SHORT_TEXT      TEST CHANGE
    MATL_GROUP      10341
    NET_VALUE      30.00
    Account assignment dist. service line1 :
    PCKG_NO      0000000050
    LINE_NO      0000000002
    SERNO_LINE      01
    PERCENTAGE      100.00
    SERIAL_NO      01
    QUANTITY      5
    NET_VALUE      25.00
    Account assignment dist. service line2 :
    PCKG_NO      0000000050
    LINE_NO      0000000003
    SERNO_LINE      01
    PERCENTAGE      100.00
    SERIAL_NO      01
    QUANTITY      5
    NET_VALUE      30.00
    PO results after IDoc posted : Purchase order Item changes screen below
    Item Indicator for Service-Based Invoice Verification Changed X  BONGAK 01.05.2015 11:20:40 3168 WE19
    Item Indicator for Service-Based Invoice Verification Changed  X BONGAK 01.05.2015 11:23:12 3169 WE19
    Item Purchasing Document Item Change Date Changed 01.05.2015 30.04.2015 BONGAK 01.05.2015 11:20:40 3168 WE19
    Item Indicator for Service-Based Invoice Verification Changed  X BONGAK 30.04.2015 16:41:02 3154 WE19
    Item Indicator for Service-Based Invoice Verification Changed X  BONGAK 30.04.2015 16:43:09 3156 WE19
    Item Indicator for Service-Based Invoice Verification Changed  X BONGAK 30.04.2015 16:49:50 3157 WE19
    Item Indicator for Service-Based Invoice Verification Changed X  BONGAK 30.04.2015 17:00:19 3159 WE19
    Item Indicator for Service-Based Invoice Verification Changed  X BONGAK 30.04.2015 17:02:33 3160 WE19
    Item Indicator for Service-Based Invoice Verification Changed X  BONGAK 30.04.2015 17:37:31 3165 WE19
    Item Indicator for Service-Based Invoice Verification Changed  X BONGAK 30.04.2015 17:40:29 3166 WE19
    Item Purchasing Document Item Change Date Changed 30.04.2015 13.04.2015 BONGAK 30.04.2015 16:41:02 3154 WE19
    Item Short Text Changed ITEM 10 CHANGE FS-FND-223 - Fees BONGAK 30.04.2015 16:41:02 3154 WE19

    Hi Kiran,
    If you are using message type ORDERS then check the qualifier and action which you have used in segments E1EDK01 E1EDK14 also check all your service segments also.
    Rgds,
    Nayeem.

  • Error while editing PO - deleting service line item and creating material line item.

    In SAP SRM Extended classic scenario, PO is in 'ordered' status and contains a service line item. While editing this PO, I delete the service line item and create a new material line item. This gives me the following error.
    Back end error: Enter G/L account
    Back end error: LIne item still contains faulty items.
    This happens only with service- material comibination and no other combination(material-service, service-service, material-material).
    I need to know the reason for this issue and how it can be solved?

    PO Values (Inc Tax):
    Item 1: INR 228 L
    Item 2: INR 27.83 L   (Payment also done in 2008)
    GR for Item 1: INR 207.46 L
    Remaining Comm = INR 21.01 L
    Item 1 having 73 sub line items.... fo some of the sub-line items GR for some qty already done in last fiscals.
    User changing for remaining qty.
    Budget Report values:
    Previous Years:  Budget, Actual & Assigned = 304.85 L
                                Available = 0      (Carry Forward done for Budget & Commitments)
    2011:                   Budget = 75.15 L
                                Actual = 53.86 L
                                Comm = 21.01 L   (Same as Remaining Commitment)
                                Avai = 0.28 L
    Hope this will help.

  • Error whil creating Service Line item in ME51N using BAPI_PR_CREATE

    Hi Experts,
                Am able to create PR number using BAPI_PR_CREATE, but when am trying to create Service line item am getting acc assignment error please check my code and solve my issue. ..its very adj  please help me .
    DATA : t_bapimereqitemimp TYPE TABLE OF bapimereqitemimp ,
          t_bapimereqaccount TYPE TABLE OF bapimereqaccount,
          t_bapimereqaccountx TYPE TABLE OF bapimereqaccountx,
          t_pritemx    TYPE TABLE OF bapimereqitemx,
          wa_bapimereqitemimp        TYPE bapimereqitemimp,
          pr_number  TYPE bapimereqheader-preq_no,
          wa_prheader  TYPE   bapimereqheader,
          wa_prheaderx TYPE  bapimereqheaderx,
          wa_pritemx   TYPE  bapimereqitemx,
          wa_bapimereqaccountx TYPE bapimereqaccountx,
          wa_bapimereqaccount TYPE bapimereqaccount,
          t_return     TYPE TABLE OF bapiret2,
          wa_return    TYPE bapiret2.
    DATA : t_bapi_srv_limit_data TYPE TABLE OF bapi_srv_limit_data,
            wa_bapi_srv_limit_data TYPE bapi_srv_limit_data.
    DATA servicelimitx  TYPE TABLE OF bapi_srv_limit_datax.
    DATA w_servicelimitx  TYPE bapi_srv_limit_datax.
    DATA : t_servicelines TYPE TABLE OF bapi_srv_service_line,
            w_servicelines TYPE bapi_srv_service_line,
            t_servicelinesx TYPE TABLE OF bapi_srv_service_linex,
            w_servicelinesx TYPE bapi_srv_service_linex,
            t_bapi_srv_acc_data TYPE TABLE OF bapi_srv_acc_data,
            w_bapi_srv_acc_data TYPE bapi_srv_acc_data,
            t_bapi_srv_acc_datax TYPE TABLE OF bapi_srv_acc_datax,
            w_bapi_srv_acc_datax TYPE bapi_srv_acc_datax.
    DATA : t_bapimereqitem TYPE TABLE OF bapimereqitem,
            w_bapimereqitem TYPE bapimereqitem.
    DATA :  t_bapimereqitemx TYPE TABLE OF bapimereqitemx,
            w_bapimereqitemx TYPE bapimereqitemx.
    wa_prheader-pr_type  = 'RV'."lv_doc_type.
    wa_prheaderx-pr_type = 'X'.
    wa_bapimereqitemimp-preq_item  = '1'."wa_eban-item.
    wa_bapimereqitemimp-pur_group  = '100'."wa_eban-ekgrp.
    wa_bapimereqitemimp-preq_name  = 'E.R. TITTO'."wa_eban-afnam.
    wa_bapimereqitemimp-short_text = 'AC Fitting'."wa_eban-txz01.
    wa_bapimereqitemimp-material   = ' '."wa_eban-matnr.
    wa_bapimereqitemimp-plant      = '1000'."wa_eban-werks.
    wa_bapimereqitemimp-store_loc  = 'ST00'."wa_eban-lgort.
    wa_bapimereqitemimp-matl_group = 'Z13'."wa_eban-matkl.
    wa_bapimereqitemimp-quantity   = '1'."wa_eban-menge.
    wa_bapimereqitemimp-unit       = 'AU'."wa_eban-meins.
    wa_bapimereqitemimp-deliv_date =  '20140604'."wa_eban-lfdat.
    wa_bapimereqitemimp-preq_price = '100'."wa_eban-preis.
    wa_bapimereqitemimp-item_cat   = 'D'."wa_eban-pstyp.
    wa_bapimereqitemimp-acctasscat =  'K'."wa_eban-knttp.
    wa_bapimereqitemimp-fixed_vend = ' '."wa_eban-flief.
    wa_bapimereqitemimp-purch_org  = '1000'."wa_eban-ekorg.
    wa_bapimereqitemimp-currency   = 'INR'."wa_eban-waers.
    wa_bapimereqitemimp-pckg_no = '00000001'.
    wa_bapimereqaccount-preq_item  = '1'."wa_eban-item.
    *wa_bapimereqaccount-serial_no  = '01'.
    wa_bapimereqaccount-gl_account = '0000002244'."wa_eban-sakto.
    wa_bapimereqaccount-costcenter = 'OPSD'."wa_eban-kostl.
    APPEND wa_bapimereqitemimp TO t_bapimereqitemimp.
    APPEND wa_bapimereqaccount TO t_bapimereqaccount.
    wa_pritemx-preq_item  = '1'."wa_eban-item.
    wa_pritemx-pur_group  = 'X'.
    wa_pritemx-preq_name  = 'X'.
    wa_pritemx-short_text = 'X'.
    wa_pritemx-material   = 'X'.
    wa_pritemx-plant      = 'X'.
    wa_pritemx-store_loc  = 'X'.
    wa_pritemx-matl_group = 'X'.
    wa_pritemx-quantity   = 'X'.
    wa_pritemx-unit       = 'X'.
    wa_pritemx-deliv_date = 'X'.
    wa_pritemx-preq_price = 'X'.
    wa_pritemx-item_cat   = 'X'.
    wa_pritemx-acctasscat = 'X'.
    wa_pritemx-fixed_vend = 'X'.
    wa_pritemx-purch_org  = 'X'.
    wa_pritemx-currency   = 'X'.
    wa_pritemx-pckg_no   = 'X'.
    wa_bapimereqaccountx-preq_item  = '1'."wa_eban-item.
    *wa_bapimereqaccountx-serial_no  = '01'.
    wa_bapimereqaccountx-preq_itemx = 'X'.
    wa_bapimereqaccountx-serial_nox = 'X'.
    wa_bapimereqaccountx-gl_account = 'X'.
    wa_bapimereqaccountx-costcenter = 'X'.
    APPEND wa_pritemx TO t_pritemx.
    APPEND wa_bapimereqaccountx TO t_bapimereqaccountx.
    **Service item limit
    *wa_bapi_srv_limit_data-doc_item = '10'.
    wa_bapi_srv_limit_data-overall_limit = '1000'.
    wa_bapi_srv_limit_data-exp_value = '800'.
    APPEND wa_bapi_srv_limit_data TO  t_bapi_srv_limit_data.
    *w_servicelimitx-doc_item = '10'.
    w_servicelimitx-overall_limit = 'X'.
    w_servicelimitx-exp_value = 'X'.
    APPEND w_servicelimitx TO servicelimitx.
    w_bapimereqitem-preq_item = '10'.
    ***w_bapimereqitem-preq_name = 'E.R. TITTO'.
    ***w_bapimereqitem-plant = '1000'.
    ***w_bapimereqitem-store_loc = 'ST00'.
    ***w_bapimereqitem-matl_group = 'Z03'.
    ***w_bapimereqitem-quantity = '1'.
    ***w_bapimereqitem-unit = 'AU'.
    w_bapimereqitem-item_cat = 'D'.
    w_bapimereqitem-deliv_time = '20140604'.
    w_bapimereqitem-acctasscat = 'K'.
    **w_bapimereqitem-consumpt = 'U'.
    APPEND w_bapimereqitem TO t_bapimereqitem.
    **w_bapi_srv_acc_data-doc_item = '1'.
    **w_bapi_srv_acc_data-outline = '0000000001'.
    *w_bapi_srv_acc_data-srv_line = '20'.
    w_bapi_srv_acc_data-serial_no = '10'.
    w_bapi_srv_acc_data-serial_no_item = 'D'.
    *w_bapi_srv_acc_data-quantity = '1'.
    *APPEND w_bapi_srv_acc_data TO t_bapi_srv_acc_data.
    **w_bapi_srv_acc_datax-doc_item = '1'.
    **w_bapi_srv_acc_datax-outline = '0000000001'.
    *w_bapi_srv_acc_datax-srv_line = '20'.
    **w_bapi_srv_acc_datax-serial_no = '01'.
    **w_bapi_srv_acc_datax-serial_no_item = '01'.
    *w_bapi_srv_acc_datax-quantity = '1'.
    *APPEND w_bapi_srv_acc_datax TO t_bapi_srv_acc_datax.
    w_servicelines-service = '00000001'.
    APPEND w_servicelines TO t_servicelines.
    w_servicelinesx-service = 'X'.
    APPEND w_servicelinesx TO t_servicelinesx.
    CALL FUNCTION 'BAPI_PR_CREATE'
       EXPORTING
         prheader        = wa_prheader
         prheaderx       = wa_prheaderx
       IMPORTING
         number          = pr_number
       TABLES
         return          = t_return
         pritem          = t_bapimereqitemimp
         pritemx         = t_pritemx
         pritemexp       = t_bapimereqitem
         praccount       = t_bapimereqaccount
         praccountx      = t_bapimereqaccountx
         servicelimit    = t_bapi_srv_limit_data
         servicelimitx   = servicelimitx
         servicelines    = t_servicelines
         servicelinesx   = t_servicelinesx
         serviceaccount  = t_bapi_srv_acc_data
         serviceaccountx = t_bapi_srv_acc_datax.

    Hi,
    Check this Thread , Thread1 . It might help you to resolve the issue.
    Thanks
    KH

  • Delete a line from a file using Oracle .

    Hi Gents,
    Is there any option from oracle to delete the last line in a file using utl_file ?
    apart from sed or other UNIX commands>
    Regards
    Fento.

    hi,
    why don't you use SQL loader..?
    post in this export,Import,External table forum..
    Export/Import/SQL Loader & External Tables
    regards,
    Deepak

  • How to remove a service line item from a service related PO

    Guys,
    I am doing a report thro' which a user can upload the details for a Service related PO. If the PO contains more Service Line Item than the upload file, then I want to remove those Service Line Items. I used BAPI_PO_CHANGE to upload the details. But I am trying to remove those additional Service Line Items using BDC in ME22 transaction. But it is not working correctly. Is there any program(s) thro' which I can remove those Service Line Items? Any expert thoughts....
    Advance Thanks
    Ramesh

    I did it through BDC.

  • Deletion of schedule line in PO using BAPI_PO_CHANGE

    Hi ,
    Can anyone give me the code to delete a schedule line in a po using the bapi bapi_po_change.
    Useful answers will be rewarded.
    Regards,
    Sowmya.

    Hi,
    Refer below code
    *&      Form  sub_populate_data
          text
    FORM sub_populate_data .
    *--Local Variables
      DATA : l_ipdate      TYPE rc65a-datefrom,
             l_fdate       TYPE sy-datum.
      IF NOT it_succ_file[] IS INITIAL.
        LOOP AT it_succ_file INTO st_succ_file.
          st_ipfile = st_succ_file.
    *--Sales Document
          CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
            EXPORTING
              input  = st_ipfile-vbeln
            IMPORTING
              output = st_salesdoc.
          st_ord_headx-updateflag = c_u.
    *--Sales Document Item
          st_schedule_line-itm_number = st_ipfile-posnr.
          st_schedule_linex-itm_number = st_ipfile-posnr.
          st_schedule_linex-updateflag = c_i.
    *--Schedule line date
          l_ipdate = st_ipfile-edatu.
    *--Call function module to convert the date format into current user format
          CALL FUNCTION 'CY_CONVERT_DATE'
            EXPORTING
              date_string_imp = l_ipdate
            IMPORTING
              date_exp        = l_fdate.
          st_schedule_line-dlv_date = l_fdate.
          st_schedule_linex-dlv_date = c_chk.
          st_schedule_line-req_date = l_fdate.
          st_schedule_linex-req_date = c_chk.
    *--Order quantity in sales units
          st_schedule_line-req_qty = st_ipfile-wmeng.
          st_schedule_linex-req_qty = c_chk.
          APPEND st_schedule_line TO it_schedule_line.
          APPEND st_schedule_linex TO it_schedule_linex.
    *--Clear
          CLEAR : st_schedule_line,
                  st_schedule_linex.
          AT END OF posnr.
    *--Perform to delete the existing schedule line
            PERFORM sub_delete_schedule_line.
          ENDAT.
          AT END OF vbeln.
    *--Clear
            CLEAR : st_erfile.
            READ TABLE it_erfile INTO st_erfile WITH KEY vbeln = st_ipfile-vbeln
                                                         posnr = st_ipfile-posnr
                                                         BINARY SEARCH.
            IF sy-subrc EQ 0.
              g_error_records = g_error_records + 1.
              g_total_records = g_total_records + 1.
            ELSE.
    *--Call the bapi to update sales order schedule line
              PERFORM sub_call_bapi.
            ENDIF.
          ENDAT.
        ENDLOOP.
      ENDIF.
    ENDFORM.                    " sub_populate_data
    *&      Form  sub_call_bapi
          text
    FORM sub_call_bapi.
      g_total_records = g_total_records + 1.
    *--Call BAPI to update sales order schedule line for simulation mode
      CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
        EXPORTING
          salesdocument    = st_salesdoc
          order_header_inx = st_ord_headx
          simulation       = c_chk
        TABLES
          return           = it_return
          schedule_lines   = it_schedule_line
          schedule_linesx  = it_schedule_linex.
      IF NOT it_return[] IS INITIAL.
        READ TABLE it_return INTO st_return WITH KEY type = c_e.
        IF sy-subrc EQ 0.
          g_error_records = g_error_records + 1.
        ELSE.
          REFRESH : it_return.
    *--Call BAPI to update sales order schedule line
          CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
            EXPORTING
              salesdocument    = st_salesdoc
              order_header_inx = st_ord_headx
            TABLES
              return           = it_return
              schedule_lines   = it_schedule_line
              schedule_linesx  = it_schedule_linex.
        ENDIF.
        LOOP AT it_return INTO st_return
                          WHERE type EQ c_e.
          st_erfile = st_ipfile.
          st_erfile-message = st_return-message.
          APPEND st_erfile TO it_erfile.
          APPEND st_erfile TO it_file.
          CLEAR : st_return.
        ENDLOOP.
      ENDIF.
      IF it_file[] IS INITIAL.
    *--Call BAPI transaction commit to change the schedule line
        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
          EXPORTING
            wait = c_chk.
      ELSE.
        ROLLBACK WORK.
    *--Call BAPI transaction rollback to rollback the schedule line
        CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
      ENDIF.
    *--Clear
      CLEAR : st_salesdoc,
              st_ord_headx.
    *--Refresh
      REFRESH : it_return,
                it_schedule_line,
                it_schedule_linex.
    ENDFORM.                    " sub_call_bapi
    Regards,
    Prashant

  • How to insert new service condition in PO using BAPI_PO_CHANGE?

    Hi all,
    I'm trying to insert a new condition under a service line in a PO. This can be seen in ME23N under the services tab of the PO item. Then click on conditions (the button with the dollar and yen symbol).
    I tried using the internal table POCOND and POCONDX. But these tables update the conditions of the PO item itself and not the service conditions. In ME23N this is the conditions tab of the PO item.
                build condition item table
                  wa_conditem-change_id = 'I'.
                  wa_conditem-itm_number   = wa_items-po_item.
                  wa_conditem-cond_type    = c_condtypz.
                  wa_conditem-cond_value   = l_plndisamt.
                  wa_conditem-currency     = l_poheader-currency.
                  APPEND wa_conditem TO it_conditem.
                  CLEAR wa_conditem.
                build condition item change parameter table.
                  wa_conditemx-itm_number    = wa_items-po_item.
                  wa_conditemx-itm_numberx   = 'X'.
                  wa_conditemx-cond_type     = 'X'.
                  wa_conditemx-cond_value    = 'X'.
                  wa_conditemx-currency      = 'X'.
                  wa_conditemx-change_id     = 'X'.
                  APPEND wa_conditemx TO it_conditemx.
                  CLEAR wa_conditemx.
      CALL FUNCTION 'BAPI_PO_CHANGE'
        EXPORTING
          purchaseorder    = wa_ekpo_u-ebeln
        TABLES
          return           = it_return
          poitem           = it_poitem
          poitemx          = it_poitemx
          pocond           = it_conditem
          pocondx          = it_conditemx
        EXCEPTIONS
          OTHERS           = 1.
    I tried using the internal tables POCONDHEADER and POCONDHEADERX but this doesn't seem to insert anything.
    Can anyone guide me how to insert a new service condition?
    thanks,
    Shafiq

    Found a SAP note 499626 quoted below. So it seems that it's not possible to use BAPI_PO_CHANGE.
    "Can I create or change conditions on the service level with BAPI_PO_CREATE1 or BAPI_PO_CHANGE?
    Answer:
    Such a function is currently not available."
    Anybody know any FM to do this?
    Edited by: shafiq shamsuddin on Mar 16, 2011 4:38 AM

  • Cannot create opportunity lines for an opportunity using Web Services 2.0

    When working with Web Services 2.0 API every object is exposed without any child objects, this means that if we want to query/update/create/delete child objects that child object has to be exposed via WSDL.
    I searched for the opportunity lines child object (also known as revenue lines) in the available WSDL's in the application and also in the documentation and I can’t find it anywhere.
    I also checked the opportunity WSDL and it does not contain any reference to the opportunity lines?
    How do I create opportunity lines for an opportunity using the Web Services 2.0 API???

    When working with Web Services 2.0 API every object is exposed without any child objects, this means that if we want to query/update/create/delete child objects that child object has to be exposed via WSDL.
    I searched for the opportunity lines child object (also known as revenue lines) in the available WSDL's in the application and also in the documentation and I can’t find it anywhere.
    I also checked the opportunity WSDL and it does not contain any reference to the opportunity lines?
    How do I create opportunity lines for an opportunity using the Web Services 2.0 API???

  • Update Schedule line Delivery date using Bapi_po_Change

    Hi all,
    I am using Bapi_po_change to Update the Schedule line Delivery date(EKET-EINDT) for the PO based on the Item and the Schedule line.
    I am passing the PO number, Po header, Item structure, Schedule line Structure.
    But the Date is not getting updated in the Eket table.
    Please suggest.

    Hi Sukriti,
    Thanks for the Response, yes i have used the Bapi Transaction Commit Also .
    The point is I am able to Update the Statistical Delivery Date in the Same EKET table using BAPI_PO_Change .I have Checked all the Ways to update the EKET-EINDT(Delivery Date)but no Unable to do it.

  • How to create 'Planned service line' using BAPI_ENTRYSHEET_CREATE? Pl. help

    I need to create service entry sheet ( SES ) using input data from text file through BAPI_ENTRYSHEET_CREATE.
    If the input contains service line items, which are not present in PO, it should be treated as an unplanned service and correspondingly 'unplanned' indicator is to be set on ML81N ( Service netry sheet ) display.
    I want to make an entry unplanned if the input field external no. ( Field: BAPIESLLC-EXT_LINE ) is not matching with external no. field of corresponding purchase order to which the SES refers.
    The BAPI works fine for all cases except one. If the unplanned service line contains field SERVICE_NO value which is matching with a SERVICE_NO in PO, it is invariable treated by BAPI as  'PLANNED'. ie. BAPI decides whenther a service line is planned or unplanned based on SERVICE_NO only.
    For eg. Let a PO contains one service line with SERVICE_NO value 1008505.
                If SES input file contains 2 service entries with SERVICE_NO value 1008505.
                While creating SES, the BAPI should treat first entry as 'planned' and second line as 'unplanned'.
                But while running the program, both lines are created as 'Planned'  only, since SERVICE_NO value 1008505 exists in the PO.
    I need to set the service line planned/unplanned through my prgram, overriding the automatic setting up of BAPI_ENTRYSHEET_CREATE.
    Hope this clarifies my requirement.
    Grateful if somebody cam provide a solution.
    Thanks & Regards,
    Manju

    Do NOT USE BAPI_SALESORDER_CREATEFROMDATA, that FM is obsolete!
    Use BAPI_SALESORDER_CREATEFROMDAT1 .
    To build a reference to your contract you have to supply ORDER_HEADER_IN.
    Here´s a sample:
    MOVE:
    gs_vbak-vbeln TO ls_bapisdhd1-refobjkey,
    gs_vbak-vbeln TO ls_bapisdhd1-ref_doc,
    gs_vbak-vbtyp TO ls_bapisdhd1-refdoc_cat,
    gs_vbak-auart TO ls_bapisdhd1-refdoctype.
    also gothrouh the links
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/snippets/abap%2b-%2bsimple%2bprogram%2bto%2bcreate%2bsales%2border%2busing%2bbapi

  • Creating Service Entry Sheet without using Service Master/Service lines

    We are invoking the BAPI_EntrySheet_Create to create the service entry sheet. We are currently facing this issue...
    1) For assigned PO's, we are getting the PO item and Account assignment information from BAPI_PO_GetDetail. We are using these values to populate the parameters/tables to invoke BAPI_EntrySheet_Create. For population the Entrysheetservices table, we are not using information from Service Master/Service lines but use the information we get from an external system to populate the Service lines(ESLL). We do not provide a Package No/Service information when invoking the BAPI but populate the service lines with short text, quantity, Gross price etc without service information like package no, outline indicator etc. The BAPI creates a service enty sheet successfully(this is without the SES Acceptance indicator not being set) but when we lookup the SES# from ML81n transaction the ESLL details lines are not displayed.
    When displaying the SES using transaction ML81N, the header information is displayed correctly but the lines are not displayed. The Header information is correctly populated in ESSR table and detail is also populated in ESLL table. I think the cross reference information is correctly set in ESLH table to pull up the detail when ML81N as it is missing the package/sub pack information.
    Your expert advise in resolving this issue is very much appreciate. Please advise.

    Hi,
    Creating Service entry sheet using bapi  BAPI_ENTRYSHEET_CREATE
    For creating service entry sheet follow below link and it helps to you.
    http://wiki.sdn.sap.com/wiki/display/ABAP/CreatingServiceEntrySheetusing+BAPI
    Regards,
    Sekhar

  • Unable to create PR with Service Line & also no entry in ESLH table using

    Hi Experts,
    I am using BAPI => BAPI_REQUISITION_CREATE to create PR and it is successful to create PR but when I try to create PO is become fail (proably missing entry in ESLH table).
    Now my requirement is to create PR with Service Line and an entry in ESLH table (should be filled by SAP automatically). I have been passing the service related/account assigment tables into BAPI but still not working.
    Will you please give a solution to create PR with Service Line and also need an entry in ESLH table (its important to my req)?
    Also provide some input on Service Line, if possible(How to check Service Line for PR + Account Assignment to Service Line + etc.)?
    Note that: If I create PR manually then there have entry in ESLH and hence I can create PO.
    Definately the quick solution help me lot...
    Thanks
    AKG

    Hi Experts,
    I am using BAPI => BAPI_REQUISITION_CREATE to create PR and it is successful to create PR but when I try to create PO is become fail (proably missing entry in ESLH table).
    Now my requirement is to create PR with Service Line and an entry in ESLH table (should be filled by SAP automatically). I have been passing the service related/account assigment tables into BAPI but still not working.
    Will you please give a solution to create PR with Service Line and also need an entry in ESLH table (its important to my req)?
    Also provide some input on Service Line, if possible(How to check Service Line for PR + Account Assignment to Service Line + etc.)?
    Note that: If I create PR manually then there have entry in ESLH and hence I can create PO.
    Definately the quick solution help me lot...
    Thanks
    AKG

  • I can not re install Adobe Acrobat 7.0 professional on my computer.  It is saying a qualifying product is not detected. I cant even get through using the customer service line they provide 800-272-3623.  This is the worst interactionI have ever had with a

    i can not re install Adobe Acrobat 7.0 professional on my computer.  It is saying a qualifying product is not detected. I cant even get through using the customer service line they provide 800-272-3623.  This is the worst interactionI have ever had with a company.

    Hi joej49728017,
    I am so sorry for the inconvenience caused. However this is just because Adobe Acrobat 7.0 is an outdated version & the now the activation server for it does not exist.
    Please refer to the following KB doc.  Error: "Activation Server Unavailable" | CS2, Acrobat 7, Audition 3
    The above link will help you to  install a special version that does not require activation.
    In case you further need any help, please let us know. We will be more than happy to help you.
    Regards,
    Aadesh

  • How to create the service lines in a sales order using Process_order API

    Hi ,
    I have to create the service lines in a Config to order using process Order API. When i am trying to create a sercvice line , it is comming as new line all together. but i need that one to happen in the configuration itself after the option item but not like standalone line.
    what are the manditory fields for service lines to create using Process_order API.
    Apprciate your help on this.
    Thanks
    Rags

    Moderator message - Please do some analysis before posting here - thread locked
    Rob

Maybe you are looking for