Bapi Improvement Issue - 'BAPI_PBSRVAPS_CHANGEKEYFIGVAL'?

Hi,
I am using the following BAPI to change the Key figure value . I am using the following Export combinations .
I am not sure but still the BAPI performance issues we are facing. Is anything else we can use the steps to improve the performance of following BAPI.?
Also do need to pass more export paramters for the same ? If yes, please share the same how to use that.
CALL FUNCTION 'BAPI_PBSRVAPS_CHANGEKEYFIGVAL'
EXPORTING
PLANNINGBOOK = PLANNING_BOOK
DATA_VIEW =
SELECTION_ID =
LOGICAL_SYSTEM =
BUSINESS_SYSTEM_GROUP =
SOURCE_PARTNER =
TARGET_PARTNER =
COMMIT_CONTROL = 'E'
Appreciated your inputs regarding the same.
Thank you - Prasad.

Thank you Emmanuel for the response.
Please see my comments below.
1. How much data are you passing to the BAPI? (e.g. how many combinations
Comment : - Min record size is of 6000 records in a file and more .
2) Are you calling the BAPI just once or multiple times?
Comment : - No I am calling BAPI for only once.
3) Are you writing into a very detailed level or an aggregate level?
Comment : The combination in file used - Product , Location and Key figure Value.
4) What planning book are you writing on? Does it contain a lot of KFs?
Comment : There are couple of Key figures in the planning book.
Please let me know if you have any information on this
Thank You - Prasad.

Similar Messages

  • BAPI Performance Issue - 'BAPI_PBSRVAPS_CHANGEKEYFIGVAL'?

    Hi,
    I am using the following BAPI to change the Key figure value . I am using the following Export combinations .
    I am not sure but still the BAPI performance issues we are facing. Is anything else we can use the steps to improve the performance of following BAPI.?
    Also do need to pass more export paramters for the same ? If yes, please share the same how to use that.
    CALL FUNCTION 'BAPI_PBSRVAPS_CHANGEKEYFIGVAL'
        EXPORTING
          PLANNINGBOOK                      = PLANNING_BOOK
         DATA_VIEW                         =
         SELECTION_ID                      =
         LOGICAL_SYSTEM                    =
         BUSINESS_SYSTEM_GROUP             =
         SOURCE_PARTNER                    =
         TARGET_PARTNER                    =
          COMMIT_CONTROL                    = 'E'
    Appreciated your inputs regarding the same.
    Thank you - Prasad.

    Thank you Emmanuel for the response.
    Please see my comments below.
    1. How much data are you passing to the BAPI? (e.g. how many combinations
    Comment : - Min record size is of 6000 records in a file and more .
    2) Are you calling the BAPI just once or multiple times?
    Comment : - No I am calling BAPI for only once.
    3) Are you writing into a very detailed level or an aggregate level?
    Comment : The combination in file used - Product , Location and Key figure Value.
    4) What planning book are you writing on? Does it contain a lot of KFs?
    Comment : There are couple of Key figures in the planning book.
    Please let me know if you have any information on this
    Thank You - Prasad.

  • Regarding bapi to issue PGI BAPI_OUTB_DELIVERY_CHANGE,sample code please

    Can you send me the sample code of this bapiBAPI_OUTB_DELIVERY_CHANGE ,if any one have used this.it's urgent please..

    Hi,
    BAPI_OUTB_DELIVERY_CHANGE - BAPI for Change to Outbound Delivery
    BAPI_INB_DELIVERY_SAVEREPLICA - Create Inbound Delivery
    RV_DELIVERY_CREATE - Create Delivery
    GN_DELIVERY_CREATE - Create an Outbound Delivery
    Код:
    FORM xkomdlgn_fill USING p_open_qty LIKE ekpo-menge
                                           p_eindt LIKE eket-eindt
                                           p_licha LIKE eket-licha
                                           p_charg LIKE eket-charg
                                           p_uzeit LIKE eket-uzeit.
      STATICS: h_grkor LIKE lips-grkor,
      h_bsmng LIKE ekpo-menge.
      CLEAR t_xkomdlgn.
      CHECK t_ekpo-uptyp NE '5' " Lot
      AND t_ekpo-uptyp NE '6' " Display
      AND t_ekpo-uptyp NE '7' " VK-Set
      AND t_ekpo-uptyp NE 'H'. " GT-Stuckliste
      IF t_ekpo-uebpo IS INITIAL AND t_ekpo-upvor CA '1I'.
        CHECK 1 = 2.
      ENDIF.
      IF NOT ekko-lifnr IS INITIAL.
        CALL FUNCTION 'VENDOR_MASTER_DATA_SELECT_12'
          EXPORTING
            pi_lifnr       = ekko-lifnr
            pi_ekorg       = ekko-ekorg
          IMPORTING
            pe_lfm1        = lfm1
          EXCEPTIONS
            no_entry_found = 1
            OTHERS         = 2.
        t_xkomdlgn-vsbed = lfm1-vsbed.
      ELSE.
        CLEAR t_xkomdlgn-vsbed.
      ENDIF.
      t_xkomdlgn-adrnr_li = ekko-adrnr.
      t_xkomdlgn-lifnr = ekko-lifnr.
      t_xkomdlgn-inco1 = ekko-inco1.
      t_xkomdlgn-inco2 = ekko-inco2.
      t_xkomdlgn-exnum = ekko-exnum.
      t_xkomdlgn-bukrs_best = ekko-bukrs.
      t_xkomdlgn-matnr = t_ekpo-matnr.
      t_xkomdlgn-werks = t_ekpo-werks.
    *IF STORAGE LOCATION IS MISSING APPEND
    *FG01 As storage location
      IF t_ekpo-lgort IS INITIAL .
        t_xkomdlgn-lgort = 'FG01' .
      ELSE .
        t_xkomdlgn-lgort = t_ekpo-lgort.
      ENDIF.
      xkomdlgn-charg = ?
      T_XKOMDLGN-VRKME = T_EKPO-MEINS.
      t_xkomdlgn-meins = t_ekpo-lmein.
      t_xkomdlgn-umvkz = t_ekpo-umrez.
      t_xkomdlgn-umvkn = t_ekpo-umren.
      IF t_ekpo-matnr EQ space.
        t_xkomdlgn-meins = t_ekpo-meins.
        t_xkomdlgn-umvkz = 1.
        t_xkomdlgn-umvkn = 1.
      ENDIF.
      t_xkomdlgn-insmk = t_ekpo-insmk.
      t_xkomdlgn-kzfme = t_ekpo-kzfme.
      t_xkomdlgn-kzvbr = t_ekpo-kzvbr.
      t_xkomdlgn-lfimg = p_open_qty.
      t_xkomdlgn-lfdat = p_eindt.
      t_xkomdlgn-lfuhr = p_uzeit.
      xkomdlgn-vstel = ?
      XKOMDLGN-VKORG = ?
      xkomdlgn-vtweg = ?
      XKOMDLGN-SPART = ?
      t_xkomdlgn-traid = t_ekpo-traid."CARRIER CODE
      t_xkomdlgn-lifex = t_ekpo-lifex."External ID
      t_xkomdlgn-bolnr = t_ekpo-bolnr."Bill Of Lading
      t_xkomdlgn-xabln = t_ekpo-xabln."Goods Receipt/Issue Slip Number
      t_xkomdlgn-vgbel = t_ekpo-ebeln.
      t_xkomdlgn-vgpos = t_ekpo-ebelp.
      t_xkomdlgn-lfart = gf_dlv_type.
      t_xkomdlgn-vgtyp = 'V'.
      t_xkomdlgn-kzazu = 'X'.
      t_xkomdlgn-knttp = t_ekpo-knttp.
      t_xkomdlgn-sobkz = t_ekpo-sobkz.
      SELECT * FROM t163g WHERE bstae EQ t_ekpo-bstae
      AND ebtyp EQ gf_ebtyp.
        EXIT.
      ENDSELECT.
      IF sy-subrc = 0.
        prufen, ob lieferavis we-zuordnung hat (vorauss. fur we uber vl32)
        und wepos prufen
        if t163g-wezuo eq space or t_ekpo-wepos eq space.
        t_xkomdlgn-nowab = 'X'.
      ELSE.
        CLEAR t_xkomdlgn-nowab.
      ENDIF.
    ENDIF.
    IF t_ekpo-matnr IS INITIAL OR t_ekpo-pstyp = '6'.
      t_xkomdlgn-posar = 'B'.
    ENDIF.
    t_xkomdlgn-ematn = t_ekpo-ematn.
    t_xkomdlgn-mfrnr = t_ekpo-mfrnr.
    t_xkomdlgn-mfrpn = t_ekpo-mfrpn.
    t_xkomdlgn-emnfr = t_ekpo-emnfr.
    t_xkomdlgn-cuobj = t_ekpo-cuobj.
    t_xkomdlgn-uebto = t_ekpo-uebto.
    t_xkomdlgn-untto = t_ekpo-untto.
    t_xkomdlgn-uebtk = t_ekpo-uebtk.
    t_xkomdlgn-lichn = p_licha.
    t_xkomdlgn-charg = p_charg.
    t_xkomdlgn-bwtar = t_ekpo-bwtar.
    t_xkomdlgn-kdmat = t_ekpo-idnlf.
    t_xkomdlgn-arktx = t_ekpo-txz01.
    t_xkomdlgn-mfrgr = t_ekpo-mfrgr.
    t_xkomdlgn-gewei = t_ekpo-gewei.
    t_xkomdlgn-voleh = t_ekpo-voleh.
    t_xkomdlgn-ntgew = t_ekpo-ntgew * t_xkomdlgn-lfimg.
    t_xkomdlgn-brgew = t_ekpo-brgew * t_xkomdlgn-lfimg.
    t_xkomdlgn-volum = t_ekpo-volum * t_xkomdlgn-lfimg.
    t_xkomdlgn-ean11 = t_ekpo-ean11.
    t_xkomdlgn-podrel = t163l-podrel.
    t_xkomdlgn-aktnr = t_ekpo-aktnr.
    t_xkomdlgn-abeln = t_ekpo-abeln.
    t_xkomdlgn-abelp = t_ekpo-abelp.
    xkomdlgn-ltssf = only SORT criteria IN vl31n
    T_XKOMDLGN-AUREL = T_EKPO-AUREL.
    t_xkomdlgn-idnlf = t_ekpo-idnlf.
    t_xkomdlgn-matkl = t_ekpo-matkl.
    leergut-stuckliste ubernehmen
    clear t_xkomdlgn-grkor.
    CLEAR t_xkomdlgn-kmpmg.
    CLEAR t_xkomdlgn-uepos.
    CLEAR t_xkomdlgn-uepvw.                                     "549736
    IF t_ekpo-upvor CA '3X'.
      h_grkor = h_grkor + 1.
      t_xkomdlgn-grkor = h_grkor.
      h_bsmng = t_ekpo-menge.
    ENDIF.
    IF NOT t_ekpo-uebpo IS INITIAL AND
    t_ekpo-uptyp CA '3X'.
      t_xkomdlgn-uepvw = 'G'.                                   "549736
      t_xkomdlgn-uepos = t_ekpo-uebpo.
      t_xkomdlgn-grkor = h_grkor.
      IF h_bsmng NE 0.
        t_xkomdlgn-kmpmg = t_ekpo-menge / h_bsmng.
      ENDIF.
    ENDIF.
    IF t_ekpo-pstyp EQ '2'.
      t_xkomdlgn-sobkz = 'K'.
    ENDIF.
    kontierungsfelder
    if t_ekpo-sobkz eq 'E' or t_ekpo-sobkz eq 'Q'.
    CALL FUNCTION 'MMPUR_EKKN_READ_EBELN_EBELP'
      EXPORTING
        pi_ebeln             = t_ekpo-ebeln
        pi_ebelp             = t_ekpo-ebelp
        pi_bypassing_buffer  = pi_refresh_buffer
        =
      tables
        pto_ekkn_po          = xekkn
      EXCEPTIONS
        no_records_requested = 1
        OTHERS               = 2.
    IF sy-subrc EQ 0.
      READ TABLE xekkn INDEX 1.
      t_xkomdlgn-ps_psp_pnr = xekkn-ps_psp_pnr.
      t_xkomdlgn-vbelv = xekkn-vbeln.
      t_xkomdlgn-posnv = xekkn-vbelp.
    ENDIF.
    ENDIF.
    APPEND t_xkomdlgn.
    ENDFORM. "xkomdlgn_fill
    LOOP AT t_xkomdlgn.
    set default parameter
    t_xkomdlgn-vgtyp = 'V'.
    t_xkomdlgn-kzazu = 'X'.
    IF t_xkomdlgn-lfart IS INITIAL.
    t_xkomdlgn-lfart = 'EL'.
    ENDIF.
    MODIFY t_xkomdlgn.
    ENDLOOP.
    SELECT SINGLE * FROM tvsa WHERE smart = xvbsk-smart.
    IF sy-subrc 0.
    Error Handling To be Done
    Meldung ins Protokoll
    ENDIF.
    l_nrnr = tvsa-numki.
    CALL FUNCTION 'NUMBER_GET_NEXT'
    EXPORTING
    nr_range_nr = l_nrnr
    object      = 'RV_SAMMG'
    IMPORTING
    number      = xvbsk-sammg
    EXCEPTIONS
    OTHERS      = 1.
    IF sy-subrc 0.
    error hadling tbd
    meldung ins protokoll
    endif.
    CALL FUNCTION 'GN_DELIVERY_CREATE'
    EXPORTING
    no_commit = 'X'
    vbsk_i = xvbsk
    if_no_deque = 'X'
    IF_MASS_READ_MAT_SW = 'X'
    vbls_pos_rueck = 'X'
    TABLES
    xkomdlgn = t_xkomdlgn
    xvbfs = xvbfs
    xvbls = xvbls
    xxlips = xlips.
    get informatioin from ekpo table and fill T_xkomdlgn

  • Bapi Task issue

    Hi Gurus,
    I'm using BAPI BAPI_PO_CHANGE for chnaging PO Prices with in a Pricing Routine related to Sales Order processing...
    But the Po is not getting changed until it is been declared as shown below (in background Mode).
    CALL FUNCTION 'BAPI_PO_CHANGE' IN BACKGROUND TASK
              EXPORTING
                purchaseorder  = lw_po-ebeln
                poheader       = lw_poheader
                poheaderx      = lw_poheaderx
    Could any please suggest if there is any alternative to fix the above issue,I just want to call the BAPI as it is like below and it should work.
    CALL FUNCTION 'BAPI_PO_CHANGE'
              EXPORTING
                purchaseorder  = lw_po-ebeln
                poheader       = lw_poheader
                poheaderx      = lw_poheaderx
    Thanks
    Natasha SS.

    Dear Suhas,
    Great.Your are correct that it would work with an Update Function Module or in Background Mode.
    But now the Problem is incase if  we use "IN BACKGROUND MODE" it will be tough to capture the Messages..(TABLES
                return         = lt_return
    CALL FUNCTION 'BAPI_PO_CHANGE' IN BACKGROUND TASK
              EXPORTING
                purchaseorder  = lw_po-ebeln
                poheader       = lw_poheader
                poheaderx      = lw_poheaderx
              TABLES
                return         = lt_return
    In this case, Can you suggest how to handle it..
    Thanks
    Natasha SS.

  • 1.1.0.21.97: Package Decomposition improvements/issues/bugs

    I believe there are a number of improvements that could be made with the package decomposition in the Navigator pane.
    It is good that cursors are now sort of being included in the decomposition, but the cursor name doesn't get included.
    Can we please have different icons for the different types of objects in the decomposition? In 1.0 we have different icons for variables, etc vs procedures and functions. As an ideal it would be great to have different icons for the different types of variables (ie one for varchar2, one for number, one for date, ... - even with a slightly different icon for constants of each type), but at least having different icons for procedures/functions, cursors, records, types and variables/constants. Especially on the body decomposition for large packages, this would make it significantly easier to find a specific type of object.
    Something else that has disappeared from 1.0 is the ability to decompose a procedure/function within a package body. In the 1.0 package body decomposition, a node is created for each of the procedures and functions which can then be expanded to see the variables, sub-procedures/sub-functions in the procedure/function.
    It would be good to have a Run right-click context menu for the specification's procedures and functions, like there is for the stored procedures and functions.
    Not a big issue, but I preferred the 1.0 way of having the Specification as a separate node on the decomposition, rather than having the specification decomposition as part of the first level.

    Cursor name: bug is logged
    Request for different icons logged
    Sub -procedure issue: Yes this a regression and it's logged.
    Menu suggestion: Nice idea - have logged an ER
    New structure in 1.1: I'll raise this with the team.
    Thanks!
    Sue

  • BAPI Lock issue

    Hi Friends,
    I have a situation where several instance of a workflow gets created at one time which as a part of the process calls a BAPI and updates a table. Only few instances could update the table successfully (Sometimes none). Rest of them couldnt. The BAPIRETURN message says 'E-PV100-Business Event nnnn is currently locked; Try again later'. I tried to call BAPI_TRANSACTION_COMMIT after the BAPI call. It didnt help. I tried to read all the locks for the user using FM ENQUE_READ and delete them using FM ENQUE_DELETE before and after the BAPI call. It doesnt help either.
    How can this be handled? Prompt replies would be appreciated and rewarded suitably.
    Thanks in advance.
    Nathan.

    Hi Nathan,
    if COMMIT and WAIT does not help, a COMMIT without work has been issued before. Many not too experienced/responsible developers tend to issue COMMIT WORKS in any kind of user exit just to make sure that their specific changes get written to the database. And you have to survive with the results.
    What you could do is check the locks and do a loop before calling BAPI as long as the object is locked. Here's some stone-old code we used for material updates:
    FORM WARTEN_VERBUCHER
      USING P_MAX_WAIT_SECONDS TYPE I
      CHANGING P_SUBRC LIKE SY-SUBRC.
      DATA:
      L_ENDTIME LIKE SY-UZEIT,
      L_TABIX LIKE SY-TABIX,
      L_TRIES TYPE I,
      L_SUCCESS LIKE SY-SUBRC,
      L_ANSW TYPE C,
      L_TRY_AGAIN LIKE RMCLS-XFLAG VALUE 'X'.
      GET TIME.
      L_ENDTIME = SY-UZEIT.
      ADD P_MAX_WAIT_SECONDS TO L_ENDTIME.
      WHILE L_TRY_AGAIN = 'X'.
        LOOP AT ITAB.
          PERFORM CHECK_LOCK_EMMARCE
            USING ZAUF-WERKS ITAB-MATNR CHANGING P_SUBRC.
          GET TIME.
          IF P_SUBRC <> 0 OR SY-UZEIT >= L_ENDTIME.
            EXIT.                          "Loop
          ENDIF.                           " sy-subrc = 0.
        ENDLOOP.                           " AT itab.
        IF P_SUBRC = 0.
          CLEAR: L_TRY_AGAIN.
        ELSE.
          IF SY-UZEIT >= L_ENDTIME .
            PERFORM POPUP_TO_CONFIRM_WAIT
              USING P_MAX_WAIT_SECONDS CHANGING L_ENDTIME P_SUBRC.
            IF P_SUBRC <> 0.
              CLEAR L_TRY_AGAIN.
            ELSE.
              CLEAR P_SUBRC.
            ENDIF.                         " p_subrc <> 0.
          ENDIF.                           " sy-uzeit >= l_endtime.
        ENDIF.                             " p_subrc = 0.
      ENDWHILE.                            " l_try_again = 'X'.
    ENDFORM.                               " WARTEN_VERBUCHER
    *&      Form  POPUP_TO_CONFIRM_WAIT
    *      -->P_WAIT_SECONDS
    *      <--P_ENDTIME
    FORM POPUP_TO_CONFIRM_WAIT USING    P_WAIT_SECONDS TYPE I
                               CHANGING P_ENDTIME LIKE SY-UZEIT
                                        P_SUBRC LIKE SY-SUBRC.
      DATA:
      L_STARTCOLUMN LIKE SY-CUCOL VALUE 10,
      L_STARTROW    LIKE SY-CUROW VALUE 20,
      L_TITLE(35),
      L_TEXTLINE1(70),
      L_TEXTLINE2(70),
      L_ANSW.
      L_TITLE = 'Warten auf gesperrte Tabelle'.
      L_TEXTLINE1 = 'Tabelle(n) sind zur Zeit gesperrt'.
      IF NOT SY-MSGV1 IS INITIAL.          "Foreign lock
        CONCATENATE L_TEXTLINE1 'durch Benutzer' SY-MSGV1
                    INTO L_TEXTLINE1 SEPARATED BY SPACE.
      ENDIF.                               " sy-msgv1 IS INITIAL.
      WRITE: P_WAIT_SECONDS TO L_TEXTLINE2.
      CONDENSE: L_TEXTLINE2.
      CONCATENATE:
        'Wollen Sie weitere' L_TEXTLINE2 'Sekunden warten?'
        INTO L_TEXTLINE2 SEPARATED BY SPACE.
      L_STARTCOLUMN = SY-UZEIT+2(2) MOD 30 + 10.
      L_STARTROW    = SY-UZEIT+2(2) MOD 10 + 3.
      CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
           EXPORTING
    *         DEFAULTOPTION  = 'Y'
                TEXTLINE1      = L_TEXTLINE1
                TEXTLINE2      = L_TEXTLINE2
                TITEL          = L_TITLE
              START_COLUMN   = L_STARTCOLUMN
              START_ROW      = L_STARTROW
    *         CANCEL_DISPLAY = 'X'
        IMPORTING
               ANSWER         = L_ANSW
           EXCEPTIONS
                OTHERS         = 1.
      IF L_ANSW = 'J'.                     "(!)
        GET TIME.
        P_ENDTIME = SY-UZEIT.
        ADD P_WAIT_SECONDS TO P_ENDTIME.
        P_SUBRC = 0.
      ELSE.
        P_SUBRC = 8.
      ENDIF.                               " l_answ = 'J'. "(!)
    ENDFORM.                               " POPUP_TO_CONFIRM_WAIT
    *&      Form  CHECK_LOCK_EMMARCE
    *      Prüfen ob Sperre gesetzt
    *      Code teilweise aus RSENQRR2 übernommen
    *      -->P_WERKS  text                                           *
    *      -->P_MATNR  text                                           *
    *      <--P_SUBRC  text                                              *
    FORM CHECK_LOCK_EMMARCE
                    USING    VALUE(P_WERKS) LIKE MARC-WERKS
                             VALUE(P_MATNR) LIKE MARC-MATNR
                    CHANGING P_SUBRC.
      DATA: ENQ LIKE SEQG3 OCCURS 0 WITH HEADER LINE.
      DATA: DEL LIKE SEQG3 OCCURS 0 WITH HEADER LINE.
      DATA: SELECT_ALL.
      DATA: GUSR     LIKE  SEQG3-GUSR.
      DATA: GMODE    LIKE  SEQG3-GMODE.
      DATA: GNAME    LIKE  SEQG3-GNAME.
      DATA: GARG     LIKE  SEQG3-GARG.
      DATA: GTARG    LIKE  SEQG3-GTARG.
      DATA: GOBJ     LIKE  SEQG3-GOBJ.
      DATA: GUNAME   LIKE  SEQG3-GUNAME.
      DATA: GCLIENT  LIKE  SEQG3-GCLIENT.
      DATA: GTCODE   LIKE  SEQG3-GTCODE.
      DATA: GUSE     LIKE  SEQG3-GUSE.
      DATA: GUSEVB   LIKE  SEQG3-GUSEVB.
      DATA: GBCKTYPE LIKE  SEQG3-GBCKTYPE..
      DATA: GRANULE  LIKE SEQTA.
    *** initializations ****************************************************
      FREE ENQ.
      FREE DEL.
      CLEAR: P_SUBRC.
    * Konvertieren Matnr
      CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
           EXPORTING
                INPUT  = P_MATNR
           IMPORTING
                OUTPUT = P_MATNR
           EXCEPTIONS
                OTHERS = 1.
      GNAME   = 'MARC'.
      GOBJ    = 'EMMARCE'.
      GUNAME  = SY-UNAME.
      GCLIENT = SY-MANDT.
      CONCATENATE SY-MANDT P_MATNR P_WERKS INTO GARG.
    * first try via RFC, retry up to 3 times ******************************
      DO 3 TIMES.
        CALL FUNCTION 'ENQUEUE_READ'
             EXPORTING
                  GCLIENT = GCLIENT
                  GUNAME  = GUNAME
                  GNAME   = GNAME
             IMPORTING
                  SUBRC   = P_SUBRC
             TABLES
                  ENQ     = ENQ
             EXCEPTIONS
                  OTHERS  = 1.
        IF SY-SUBRC = 0.
          EXIT.
        ENDIF.
      ENDDO.
    * if RFC fails read via NFS ********************************************
      IF SY-SUBRC <> 0.
        CALL FUNCTION 'ENQUE_READ'
             EXPORTING
                  GCLIENT = GCLIENT
                  GUNAME  = GUNAME
                  GNAME   = GNAME
                  GARG    = GARG
             IMPORTING
                  SUBRC   = P_SUBRC
             TABLES
                  ENQ     = ENQ.
        MESSAGE ID '03' TYPE 'W' NUMBER 113.
      ENDIF.                               "sy-subrc <> 0.
      LOOP AT ENQ.
        CHECK ENQ-GARG(25) = GARG(25).
        CHECK ENQ-GOBJ = GOBJ.
        SY-MSGV1 = ENQ-GUNAME.
        P_SUBRC = 8.
        EXIT.
      ENDLOOP." AT enq WHERE garg(25) = garg(25) and gobj = 'EMMARCE'.
    ENDFORM.                               " CHECK_LOCK_EMMARCE
    Please adapt to your needs; I think as your processes are running in background, you can take out the POPUP_TO_CONFIRM_WAIT. We used it just to have a chance to get out of the waiting loop if someone slept at his terminal...
    Regards,
    Clemens

  • HR Employee Address Change BAPI - CONFIGURATION ISSUE

    Dear HR Gurus,
    I have a typical issue in BAPI_ADDRESSEMPUS_CHANGE:
    I am trying to change/update employee address using the above bapi from non-SAP application.  I have tested this scenario on 4 different SAP instances.  The BAPI work fine on 2 different instance 1) 4.6C and 2) 4.7
    And It doesn't work on the other two instances 1) 4.7 and 2) 5.0 .  I get : [Mesg: Processing in SAP failed. BAPI returned message: Type: "E", Number: "055", Text:"Make an entry in all required fields".], Even though i am entering the same values as i enterd while testing with other two instances. 
    I guess, If this is a bug SAP would have fixed it in 4.7 or 5.0 at least, since one of our 4.6C instance works fine.  I believe it's a CONFIGURATION ISSUE.
    Any one of you encountered this problem ever?  Any thoughts on this would highly appreciated.
    Thanks
    Madan

    Hi Madan,
    You are right, it looks like a configuration issue. Config dictates which screens and which fields of those screens are required, optional or not displayed. From your description, it looks like the config on two of them matches with your input and in the other two, it does not. Check the config. Here is the path.
    Implementation Guide for R/3 Customizing (IMG)
    -->Financial Accounting
       -->Accounts Receivable and Accounts Payable
          -->Customer Accounts
             -->Master Records
                -->Preparations for Creating Customer Master Records
                   -->Define Account Groups with Screen Layout (Customers)
                   -->Define Screen Layout per Company Code (Customers)
                   -->Define Screen Layout per Activity (Customers)
    Srinivas

  • Bapi updating issue for MD61

    Hello All,
    My code for MD61 upload data is as follows.
    the issue is if we have any record in the excel is having the wrong data,
    it is not updating the below records.
    SORT itab BY matnr werks.
      DELETE ADJACENT DUPLICATES FROM itab COMPARING matnr werks.
      LOOP AT itab INTO w_itab.
        CALL FUNCTION 'BAPI_REQUIREMENTS_GETDETAIL'
       EXPORTING
         material               = w_itab-matnr
         plant                  = w_itab-werks
         requirementstype       = ' '
         version                = c_00
         reqmtsplannumber       = ' '
    *       MRP_AREA               =
    *       MATERIAL_EVG           =
       TABLES
        requirements_out        = it_reqout[]
         return                 = it_return
        IF NOT it_reqout[] IS INITIAL.
          LOOP AT jtab INTO w_jtab
                            WHERE matnr = w_itab-matnr
                            AND   werks = w_itab-werks.
            wa_chrq-date_type = '1'.
            wa_chrq-req_date  = w_jtab-dats.
            wa_chrq-req_qty   = w_jtab-qty.
            wa_chrq-unit      = w_jtab-uom.
            wa_chrq-prod_ves  = w_jtab-prdver.
            APPEND wa_chrq TO it_chrq.
            CLEAR wa_chrq.
          ENDLOOP. " jtab
    *      AT END OF werks.
    *       ON CHANGE OF w_jtab-werks.
          CALL FUNCTION 'BAPI_REQUIREMENTS_CHANGE'
            EXPORTING
              material                       = w_jtab-matnr
              plant                          = w_jtab-werks
              requirementstype               = ' '
              version                        = c_00
              reqmtsplannumber               = ' '
              vers_activ                     = c_x
    *                 REQUIREMENT_PARAM              =
    *             MRP_AREA                       =
    *         do_commit                      = c_x
             update_mode                    = c_x
             delete_old                     = ' '
    *            NO_WITHDR                      = ' '
    *            MATERIAL_EVG                   =
          IMPORTING
            requirement_item_out            = it_chreqout
            TABLES
             requirements_schedule_in       = it_chrq
    *   REQUIREMENTS_CHAR_IN           =
              return                        = it_chret
          IF  it_chreqout IS INITIAL.
            LOOP AT it_chret INTO wa_chret WHERE type EQ 'E'.
              WRITE:/ 'PIR cannot be modified for ',30 w_jtab-matnr,
                                                                        54 w_jtab-werks,
                                                                        65 wa_chret-message.
            ENDLOOP. " it_chret
          ELSE.
    Edited by: kishan P on Oct 12, 2010 11:07 AM
    Edited by: Ganesh Reddy on Oct 12, 2010 1:25 PM

    Dear Manikandan K,
    Regarding the message we can tell you that the error message           
    "Item is not a component of the referenced Work Order" usually appears 
    because there is a case sensitive problem between the item code given  
    in the BOM and the item code given in the item master data.            
    Please check if the item codes of the BOM are exactly the same as the  
    codes given in the item master data. There should not be any differences
    between spelling of the codes (for example item code in the item master
    data is with capital letters X00014447 while the item code in the BOM  
    is with normal letters x00014447).                                                                               
    In case you find item with this issue please correct its item code     
    in the BOM manually so it will be exactly identical with the code given
    in the item master data.                                               
    Regards,
    Marcella Rivi
    SAP Business One Forums Team

  • BAPI Reimport Issue

    Hello
    i recently reimported an RFC and there is new field which was added in the structure
    Now i found the new element in the model and performed the model to component controller binding
    I have restarted the java server many times also
    I am getting the error as below
    com.sap.tc.webdynpro.progmodel.context.ContextConfigurationException: DataNodeInfo(---.OutItemItem): structure field Vbund not found
    There is no build error and i can see the new field in the dictionary also.
    See the attached images
    What could be the problem?
    Regards
    Bobu
    Message was edited by: Bobu Putheeckal

    hello Bobu,
    if you have followed above steps , Metadata Cache invalidation part etc and also if you have restarted the server then your problem should be solved .
    As Luis Suggested ,
    At Runtime check if your server is pointing to R/3 where this field was added or , anothe R/3 this feild is yet to be added.. i.e
    íf you have development and quality r/3 , you might have added new feild and imported the same from development R/3 but at when deployed to the server and at run time when your server might be refering your Quality r/3 where the field is yet to be added.
    i.e check the JCos to which R/3 it is pointing in the server in which you are facing this problem
    Regards
    Govardan Raj S

  • CUCMBE3K Experience and Issues Identified

    I have created a list below of issues and experiences whilst working with the CUCMBE3K.
    For the purposes of this dialog, I will refer to this particular customer as “CustomerX”.
    Part 1: Pre-Sale Engagement Summary
    Following true to the Cisco PPDIOO model, the CUCMBE3K was identified as the best fit for the customer requirements, both technically as well as functionality. Apart from the standard hunt groups, the main highlights being the following:
    Voicemail-to-Email notifications
    Voicemail for all users
    Extension Mobility for the bulk of users
    Multilevel Auto Attendant
    Integrated E1
    FXS support for FAX
    Paging/auto-answer
    The Quick Pricing Tool (QPT) is the recommended Cisco tool to scope and create a CUCMBE3K BoM. And thus, this tool was used. The BoM of which was validated by Cisco Partner Presales and the order was placed.
    Issue 1: UCL Licenses arrived in singular form
    The first thing I happened to notice whilst I was unpacking the boxes was the quantity of UCL licenses. Yes, I am aware of bundled licenses, and I select those wherever possible, however these were specific to UCL voicemail licenses. Now I am not going to into how archaic the process is of still having to map a license key to a MAC address – I feel this should be done in the backend and not by partners like many other vendors do it – so we will look past this fact. Where I do have a concern is having to spend hours online manually activating UCL Voicemail licenses (restricted to 10 as “bulk” option on the Cisco Online License Tool); only to find out later that the CUCMBE3K itself can only accept 1 license upload at a time – therefore increasing the hours associated to simply applying licenses.
    Issue 1 Summary:  
    UCL Licenses provided in singular form for UCL VM, despite ordering via QPT.
    Online license Tool unable to process more than 10 PAK’s at a time;
    CUCMBE3K unable to accept more than 1 license at one time
    Issue 1 Fixes/Workarounds/Requests 
    Cisco, please fix QPT to ensure so that when you specify the amount of voicemail users it creates UCL VM bundled sku’s for VM UCL’s
    Increase the ability of the Cisco online License Tool to accept more than 10 at a time.
    CUCMBE3K team, please provide the ability to select more than one license at a time to import.
    Issue 2: Wait time of 15 minutes before CUCMBE3K Web interface responds
    Powering on the CUCMBE3K unit; like any engineer you would run a ping to the default IP address to indicate when the device has successfully come up and then you would connect to it via the appropriate management interface. The CUCMBE3K would respond to the ping shortly after start-up, however the web interface was not available. No documentation indicates that the CUCMBE3K actually takes between 15 to 20 minutes to start-up, before it becomes responsive and phones can register.
    Issue 2 Summary: 
    CUCMBE3K takes 15 to 20 minutes to respond after boot-up.
    Nowhere is this documented yet when TAC case is logged, it is outlined as normal behaviour
    Issue 2 Fixes/Workarounds/Requests: 
    Be patient
    Cisco, please update documentation
    CUCMBE3K Team, please look at how this boot-up time can be improved
    Issue 3: First Time Wizard Crashes/Issues and Web Interface
    As per the CUCMBE3K documentation for version 8.6.3, which is what was shipped with this device. I did not use the “Bulk Import Tool” (which I will get into a bit later) and simply configured the first time wizard for a “single” site. The wizard itself crashed 3 times, where I would be working through it and it would simply hang and stop responding. So I would have to restart the device and then have to wait 15 to 20 minutes before I could try again. You are looking at 1 full hour of sole boot-up time as a result of this – never mind the crashing interface.
    I just kept trying and then eventually got through to the “Sites” page within the wizard, which then presented another issue. For some reason the wizard would accept all my entries yet it would not let me proceed past the “Sites” Page. The only way I could get past that “Sites” page was to start the wizard again and then click “next, next, next” for the previous pages (that I had already completed) and then it let me through the “Sites” page.
    When I submitted the completion of the wizard, my browser immediately displayed “timeout error”, after which I could no longer connect to default 192.168.1.250. I then tried to connect to the newly assigned IP address. It responded but would not let me log in with either the new or old credentials. I then heard the device restart…assuming that now it had applied my Wizard configurations. I think it would be a good idea to have some sort of progress bar for something like this?
    I waited for the unusually long period (20 minutes) before trying to connect and yet this time I could not connect. Even after waiting for over an hour. Ping responses to the newly configured IP address were responding. Yet no Web service was available. I restarted it after waiting for over an hour and  half.
    After the restart, I waited again for over an hour and yet no luck – I turned it off and I went home for the evening. I had wasted one full day on trying to give this device an IP address and login?
    In the morning I powered the device back up and I could then connect to the web interface but could not access the CUCMADMIN page…I kept getting an error page indicating that cucmadmin is not available. After much retrying it eventually let me in and then I could log in for the first time post wizard configuration.
    Now that I was in and working on the CUCMBE3K interface, there came a time where I had to log out. When I tried to log back in I received “An error has occurred during authentication. Contact your system administrator.” This seemed to occur regularly and logging-in twice seemed to be the only way to log into the interface (with the same credentials).
    I could go on but I think you get the drift.
    Issue 3 Summary:
    Unstable 8.6.3 Wizard\Web interface
    No progress bar for Wizards submission/config application
    Issue 3 Fixes/Workarounds/Requests: 
    Be patient
    Upgrading to Version 8.6.4 dramatically improved stability of Web interface (but be careful of country pack backward compatibility – install country pack first before upgrade!!)
    Cisco TAC recommend using Firefox – despite it not being listed as a supported browser
    Issue 4: All Email address field do not support [email protected]
    This particular environment is quarantined, and hence they use a domain of customerXdomain.local.
    This is not supported on CUCMBE3K, despite it being a valid email address.
    Issue 4 Summary: 
    No support for *.local on any email fields
    Issue 4 Fixes/Workarounds/Requests: 
    Cisco Bug/Defect has been logged (CSCub81401)
    No work around
    Issue 5: 7900 Handsets are not configured after changes have been applied to them
    Should you make a change to a usage profile and/or speed-dial etc, the affected handset then restarts and upon restart has those configurations applied.
    This works fine with the 6900 series handsets however, not with the 7900 series handsets. You have to restart the 7900’s manually for changes to be applied. Not sure if this is related but I also noticed that after a CUCMBE3K restart, the 7900 series handsets did not register automatically. The just sit there indicating “registering”. So you have to manually restart them to get them to register them to the CUCMBE3K device.
    Issue 5 Summary: 
    7900’s do not accept changes applied to them via CUCMBE3K
    After CUCMBE3K restart, the 7900’s do not automatically register to the CUCMBE3K. They require a manual reboot. In some cases this was seen to be an intermittent issue i.e sometimes a 7900 handset would in fact register.
    Issue 5 Fixes/Workarounds/Requests: 
    Cisco Bug/Defect has been logged (CSCub81366)
    No work around
    Issue 6: Cannot assign more than 40 Speed Dials
    An error is received when you try to add more than 40 speed-dials to a phone. Despite the phone being a 7975+7916+7916 handset (a tally of 48 speed-dials on the 7916 sidecars alone)
    Issue 6 Summary:  
    Cannot allocate more than 40 Speed Dials to handset despite if the handset can support it.
    Issue 6 Fixes/Workarounds/Requests: 
    Cisco Bug/Defect has been logged (CSCub83528)
    No work around
    Issue 7: No Call Busy Forward to Voicemail from Huntgroup
    There is no option to have a Hunt Group Voicemail. So if no one is available in the hunt group the call will receive an engaged tone. This is a feature typically expected for any current voice platform.
    Issue 7 Summary:  
    No support for Hunt Group VM
    Issue 7 Fixes/Workarounds/Requests: 
    Cisco Bug/Defect has been logged (CSCub83528)
    Configure Call-forward to extension with Voicemail configured for hunt group
    Issue 8: Extension Mobility Users unregister when not logged in
    This was a significant issue with this engagement.
    The CUCMBE3K unregisters the EM user when not actively logged into a handset. This means when you call an EM user that is not logged in – you get an engaged tone. Not voicemail as what would be expected.
    Issue 8 Summary:  
    No voicemail support for EM users that aren’t actively logged in
    Issue 7 Fixes/Workarounds/Requests:  Cisco Bug/Defect has been logged (Bug ID CSCub83528)
    Issue 9: Bulk Import Tool
    The CUCMBE3K supports a feature/tool called the Bulk Import Tool. Like the name says, it allows one to upload a large portion of user details and phones to the CUCMBE3K instead of manually adding them one by one.
    The issue is that in the CUCMBE3K interface, a user configuration has both a “PIN” and a “Password”. The Bulk Import Tool does not have a column or field to specify the “PIN” and thus one has to go to each and every single user manually and configure their PIN.
    Issue 8 Summary:  
    No user “Pin” number support in “Bulk Import Tool”
    Issue 7 Fixes/Workarounds/Requests: 
    Cisco Bug/Defect has been logged (Bug ID CSCub86268)
    Manual configuration of each user “Pin” field
    Issue 10: Auto Attendant “Dial-by-Extension” Feature issues
    It was noted that Dial-by-Extension is not supported for Extension Mobile users as well as Departmental handset.
    Issue 10 Fixes/Workarounds/Requests: 
    Cisco Bug/Defect has been logged (Bug ID CSCuc59234)
    No work around
    Issue 11: Caller ID –amends user extension to external Caller ID
    The CUCMBE3K amends the extension of the user/handset to the caller ID; so for example, if extension 123 (assuming 3 digit extension length) is making an external call to the outside world, the CUCMBE3K will present a Calling Number of 0x xxxx x123 (where x is the numbers of the dial plan)
    This presents an issue if that extension number is not present in the number block on the PSTN side. I.e if 0x xxxx x123 is trying to call when the customer numbers purchased on the PSTN service only go up to 0x xxxx x100, the 123 call will fail. As a result you need to add a “Calling Pattern Translation pattern”. However this is not available in the CUCMBE3K interface and thus a Cisco TAC needs to be made
    Issue 10 Summary:  
    No option to configure Calling party translation via CUCMBE3K interface
    Issue 10 Fixes/Workarounds/Requests: 
    Cisco Bug/Defect has been logged (Bug ID CSCuc59156)
    Log Cisco TAC
    Other Feature limitations
    Just some other feature limitation that I thought may be worthwhile listing
    Auto Attendant – no multilevel function
    No auto-answer is supported despite the handsets supporting it i.e. 6921’s
    No paging/intercom is supported
    No modification of 7900 background images is supported – despite the 7900 handsets supporting this feature.
    There is no file management interface, so no option/ability to manage firmware manually etc.

    Brian,
    Thanks for being a Cisco partner, working with TAC on resolving some of the issues you faced and taking time to provide feedback.
    We have taken the feedback seriously and will work on addressing them in upcoming release.
    Sanjay

  • Issue in setting IBASE component of service confirmation item

    Hello Experts,
                   I am facing a problem while creating a service confirmation item with reference to Service order items.  I am using CRM_ORDER_MAINTAIN
    bapi.  Issue is in the Ibase component of the service confirmation items as it is always taking the Ibase component of Confirmation Header even though
    i am explicitly passing the Ibase component of service conf item of  with IT_SERVICE_OS parameter. I am making sure that i fill up MARKED_OBJECT correctly.
    in CRMD_ORDER  i can see the Ibase component of  header and item both but Header one is the marked as main reference object.
    Any idea why Component can not be set explicitly for for service confirmation item.

    To achieve the above, try the below fix:
    var buttonBar:ButtonBar = new ButtonBar();
    buttonBar.requireSelection = true;
    Hopefully this works for you . Cheers!!

  • How to populate Tree structure from BAPI while tree grows or shrinks

    Hi All
    Currently I am populating the tree structure from BAPI based on the HLevel (Hierarchy  Level) parameter, but when ever insertion and deletion happens in the tree at any level in the UI and at the same time i am updating these tree node values with HLevel value(example : 1 is first level , 2 is second level, 3 is third level etc)  updating successfully& correctly  into the BAPI, no issues.
    Once it is updated into the BAPI, next time when i refreshed the UI then i am not populating the tree structure correctly from BAPI with updated new nodes based on the HLevel. when tree struture grows or shrinks in the BAPI after updating into BAPI from UI then i am not populating the tree sturcture correctly based on the HLevel value from the BAPI.
    Please let me know any sample code how to populate tree structure correctly when tree structure grows or shrinks based on the HLevel value ( Hierarchy Level , for example : 1 is level , 2 is 2nd level , 3 is third level nodes etc)
    anybody helps in this regard with sample code on the populating tree tructure then it would be great help to me.
    Thanks in advance
    Regards
    Kalki Reddy
    Edited by: KalkiReddy on Nov 29, 2009 3:48 PM

    Bapi output node:
    Value     | Text     | HLevel
    01     | A     | 1               
    0101     | AA       | 2
    010101     | AAA     | 3
    01010B     | AAB     | 3
    0102     | AB     | 2
    02     | B     | 1
    0201     | BA        | 2
    This code is used to build the tree in wdDoInit method
         IE_T_CatalogueNode catalogueNode = wdContext.nodeE_T_Catalogue();
         int size = catalogueNode.size();
         ICatalogoElement level1elem = null;
         for (int i = 0; i < size; i ++)
              IE_T_CatalogueElement catalogueElem = catalogueNode.getE_T_CatalogueElementAt(i);
              if (catalogueElem.getLevel().equals("1"))
                   // 1 Livello
                   level1elem = wdContext.createCatalogoElement();
                   level1elem.setKATALOGART_CODE(catalogueElem.getKatalogart());
                   level1elem.setCODEGRUPPE_CODE(catalogueElem.getCodegruppe());
                   level1elem.setCODE(catalogueElem.getCode());
                   level1elem.setCODE_DESCR(catalogueElem.getKatalogart_Descr());
                   level1elem.setDESCR(catalogueElem.getKatalogart_Descr());
                   wdContext.nodeCatalogo().addElement(level1elem);
                   for (int j = i + 1; j < size; j ++)
                        IE_T_CatalogueElement catalogueElem2level =
                                                 catalogueNode.getE_T_CatalogueElementAt( j );
                        String level2 = catalogueElem2level.getLevel();
                        if (level2.equals("2"))
                             ICatalogoElement level2elem = level1elem.nodeChild().createCatalogoElement();
                             level2elem.setKATALOGART_CODE(catalogueElem2level.getKatalogart());
                             level2elem.setCODEGRUPPE_CODE(catalogueElem2level.getCodegruppe());
                             level2elem.setCODE(catalogueElem2level.getCode());
                             level2elem.setCODE_DESCR(catalogueElem2level.getCodegruppe_Descr());
                             level2elem.setDESCR(catalogueElem2level.getCodegruppe_Descr());
                             level1elem.nodeChild().addElement(level2elem);
                             for (int k = j + 1; k < size; k ++)
                                  IE_T_CatalogueElement catalogueElem3level =
                                                           catalogueNode.getE_T_CatalogueElementAt( k );
                                  String level3 = catalogueElem3level.getLevel();
                                  if (level3.equals("3"))
                                       ICatalogoElement level3elem = level2elem.nodeChild().createCatalogoElement();
                                       level3elem.setKATALOGART_CODE(catalogueElem3level.getKatalogart());
                                       level3elem.setCODEGRUPPE_CODE(catalogueElem3level.getCodegruppe());
                                       level3elem.setCODE(catalogueElem3level.getCode());
                                       level3elem.setCODE_DESCR(catalogueElem3level.getCode_Descr());
                                       level3elem.setDESCR(catalogueElem3level.getCode_Descr());
                                       level2elem.nodeChild().addElement(level3elem);
    Damiano

  • Can any one tell if there is bapi in Material management

    Hi experts!
                1) can anyone tell me If i can use the bapi for "goods receipt against outbound delivery-stock transfer order from godown to lounge. The transaction for this is "migo".
                2) Is there any bapi  for "Issue of materials to vendors under returnable". the transaction for this is "mb1b"
    thanks in advance
    Susmita K

    hi Susmita,
    One way of finding out is..go the main program of that Transaction. Give a find on 'BAPI' and select main program...
    It will list out the BAPI's used/called in the transaction.
    Other way, is to put a break-point at Command 'BAPI'..and proceed further...
    try out...
    check the below link may be useful for you
    http://www.sap-img.com/abap/bapi-goodsmvt-create-to-post-goods-movement.htm
    list of all bapis
    http://www.planetsap.com/LIST_ALL_BAPIs.htm
    for further more info you can check it in forum search also......
    If u find it useful mark the points
    Regards,
    GNK

  • One issue regarding PPDS OP.confirmation from Legal Non-SAP system

    Dear Experts
    we met a BAPI function issue regarding PPDS Operation.confirmation from Legal Non-SAP system.
    scenario is as following:
    we want to build the interface between PPDS and non-SAP system, regarding OP. and order confirmation inbound processing.
    now we input simulated inbound date and test using BAPI: BAPI_MOSRVAPS_CONFOPRMULTI
    but we find a problem, even we set different value for fields ‘ duration’ in function. after call BAPI, It didn't reflect the 'net duration' or 'remaining duration', these fields not changed through check in Tcode:/SAPAPO/RRP3 for single operation.
    In the meanwhile , but it works for fields 'confirmed Yield' and fields 'confirmed Scrap' for single operation.
    my questions is that: if we need to synchronize the operation confirmation( including confirmed yield,confirmation scrap, duration),do we use the correct BAPI for this or do we need an additional BAPI, please hints.
    Thanks a lot! any feedback would be welcome!
    Best Regards
    Kevin

    Hi Kevin,
    Yes you use the right BAPI.
    you have to use table OPERATION_CONFIRMATION.
    You cannot just set the duration. You have to trigger time event confirmations.
    The field duration according to the documentation currently not supported.
    You need to use CONFIRMATION_TYPE
    0100 Start of Setup
    0150 End of setup
    0200 Start of processing
    0300 Partially complete
    0350 Complete
    Not sure if all confirmation types are supported by the BAPI.
    You can also set start and end time but not sure either whether it is supported or not.
    Regards,
    Uli

  • Emails through BAPIs

    hi friends, can we send emails through BAPIs.my issue right now is---
    1)Notifications (by E-mail and as a returned parameter to the BAPI) of
    customers which were created using BAPI's .
    i dont have much knowledge in BAPIs.
    Can v solve the issue?
    Thanks.

    Hi Shiva,
    Check this blog.
    /people/thomas.jung3/blog/2004/09/08/sending-e-mail-from-abap--version-610-and-higher--bcs-interface
    Regards
    Aneesh.

Maybe you are looking for